-
Notifications
You must be signed in to change notification settings - Fork 121
Expand file tree
/
Copy pathpackagedef
More file actions
160 lines (127 loc) · 7.81 KB
/
packagedef
File metadata and controls
160 lines (127 loc) · 7.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
#Использовать 1commands
////////////////////////////////////////////////////////////
// Описание пакета для сборки и установки
// Полную документацию см. на hub.oscript.io/packaging
//
#Область УстановкаПакетаНаКлиентскойМашине
// Вызывается пакетным менеджером перед установкой пакета на клиентскую машину.
//
// Параметры:
// КаталогУстановкиПакета - Строка - Путь в который пакетный менеджер устанавливает текущий пакет.
// ЧтениеZipФайла - ЧтениеZipФайла - Архив пакета.
//
Процедура ПередУстановкой(Знач КаталогУстановкиПакета, Знач ЧтениеZipФайла) Экспорт
КонецПроцедуры
// Вызывается пакетным менеджером после распаковки пакета на клиентскую машину.
//
// Параметры:
// КаталогУстановкиПакета - Строка - Путь в который пакетный менеджер устанавливает текущий пакет.
// СтандартнаяОбработка - Булево - стандартная обработка
//
Процедура ПриУстановке(Знач КаталогУстановкиПакета, СтандартнаяОбработка) Экспорт
КонецПроцедуры
#КонецОбласти
#Область СборкаПакета
// Вызывается пакетным менеджером перед началом сборки пакета.
//
// Параметры:
// РабочийКаталог - Строка - Текущий рабочий каталог с исходниками пакета.
//
Процедура ПередСборкой(Знач РабочийКаталог) Экспорт
СобратьПакетСЛокальнымиЗависимостями(РабочийКаталог);
Команда = Новый Команда;
Команда.УстановитьПравильныйКодВозврата(0);
Команда.ПоказыватьВыводНемедленно(Истина);
Команда.УстановитьРабочийКаталог(РабочийКаталог);
Команда.УстановитьСтрокуЗапуска("oscript src/main.os compileepf epf epf --v8version 8.3 --root """ + РабочийКаталог + """");
КодВозврата = Команда.Исполнить();
Сообщить("Вывод команды " + Команда.ПолучитьВывод());
Если КодВозврата <> 0 Тогда
ВызватьИсключение СтрШаблон("Код возврата не равен 0, а равен %1", КодВозврата);
КонецЕсли;
КонецПроцедуры
// Вызывается пакетным менеджером после помещения файлов в пакет.
//
// Параметры:
// РабочийКаталог - Строка - Текущий рабочий каталог с исходниками пакета.
// АрхивПакета - ЗаписьZIPФайла - ZIP-архив с содержимым пакета (включаемые файлы).
//
Процедура ПриСборке(Знач РабочийКаталог, Знач АрхивПакета) Экспорт
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Процедура СобратьПакетСЛокальнымиЗависимостями(Знач РабочийКаталог) Экспорт
Попытка
УдалитьФайлы(ОбъединитьПути(РабочийКаталог, "oscript_modules"), "*.*");
Исключение
// При удалении иногда возникают ошибки, но это не критично
КонецПопытки;
Команда = Новый Команда;
Команда.УстановитьПравильныйКодВозврата(0);
Команда.ПоказыватьВыводНемедленно(Истина);
Команда.УстановитьСтрокуЗапуска("opm install -l");
Команда.УстановитьРабочийКаталог(РабочийКаталог);
КодВозврата = Команда.Исполнить();
Если КодВозврата <> 0 Тогда
ВызватьИсключение СтрШаблон("Ошибка сборки пакета. Код возврата: %1", КодВозврата);
КонецЕсли;
ВосстановитьНастройкиЗависимостейВ_oscript_cfg();
КонецПроцедуры
// TODO до исправления бага opm - удаляется строки с lib.system
Процедура ВосстановитьНастройкиЗависимостейВ_oscript_cfg()
ИмяФайлаНастройки = "oscript.cfg";
ИмяФайлаШаблона = "oscript-template.cfg";
Каталоги = КаталогиС_oscript_cfg();
Для Каждого Каталог Из Каталоги Цикл
КопироватьФайл(ОбъединитьПути("tools", ИмяФайлаШаблона), ОбъединитьПути(Каталог, ИмяФайлаНастройки));
КонецЦикла;
КонецПроцедуры
Функция КаталогиС_oscript_cfg()
Результат = Новый Массив;
Результат.Добавить("src");
Результат.Добавить("tools");
Возврат Новый ФиксированныйМассив(Результат);
КонецФункции
#КонецОбласти
Описание.Имя("vanessa-runner")
.Версия("2.6.0")
.ВерсияСреды("1.9.2")
.АдресРепозитория("https://github.com/vanessa-opensource/vanessa-runner")
.ЗависитОт("1commands", "1.5.0")
.ЗависитОт("asserts", "1.4.0")
.ЗависитОт("cli-selector", "0.5.0")
.ЗависитОт("cmdline", "1.0.0")
.ЗависитОт("fluent", "0.6.1")
.ЗависитОт("fs", "1.2.0")
.ЗависитОт("ibcmdrunner", "0.3.0")
.ЗависитОт("json", "1.1.1")
.ЗависитОт("logos", "1.7.0")
.ЗависитОт("packageinfo", "1.1.1")
.ЗависитОт("ParserFileV8i", "0.0.5")
.ЗависитОт("semver", "0.5.2")
.ЗависитОт("strings", "0.5.0")
.ЗависитОт("tempfiles", "1.0.0")
.ЗависитОт("v8find", "0.3.0")
.ЗависитОт("v8runner", "1.10.0")
.ЗависитОт("v8storage", "0.6.5")
.ЗависитОт("v8unpack", "1.0.8")
.ЗависитОт("gitrunner", "1.7.1")
.РазработкаЗависитОт("1bdd", "1.14.0")
.РазработкаЗависитОт("1testrunner", "1.8.0")
.РазработкаЗависитОт("add", "6.8.0")
.РазработкаЗависитОт("coverage", "0.7.0")
.ВключитьФайл("tools")
.ВключитьФайл("src")
.ВключитьФайл("features")
.ВключитьФайл("epf")
.ВключитьФайл("oscript_modules")
.ВключитьФайл("packagedef")
.ВключитьФайл("examples")
.ВключитьФайл("readme.md")
.ВключитьФайл("LICENSE")
.ВключитьФайл("vanessa-runner-schema.json")
.ОпределяетКласс("runner", "tools/runner.os")
.ИсполняемыйФайл("src/main.os", "runner")
.ИсполняемыйФайл("src/main.os", "vrunner")
.ИсполняемыйФайл("src/main.os", "vanessa-runner")
.ИсполняемыйФайл("tools/runner.os", "runner-old");