Skip to content

Commit 2940d7c

Browse files
committed
Merge branch 'release/v2.2.0'
2 parents acf518b + b00d6c5 commit 2940d7c

14 files changed

+248
-76
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
2+
tests\.xml

Jenkinsfile

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
2+
pipeline {
3+
agent none
4+
options {
5+
buildDiscarder(logRotator(numToKeepStr: '7'))
6+
skipDefaultCheckout()
7+
}
8+
9+
stages {
10+
stage('Тестирование кода пакета WIN') {
11+
12+
agent { label 'windows' }
13+
14+
steps {
15+
checkout scm
16+
17+
script {
18+
if( fileExists ('tasks/test.os') ){
19+
bat 'chcp 65001 > nul && oscript tasks/test.os'
20+
junit 'tests.xml'
21+
}
22+
else
23+
echo 'no testing task'
24+
}
25+
26+
}
27+
28+
}
29+
30+
stage('Тестирование кода пакета LINUX') {
31+
32+
agent { label 'master' }
33+
34+
steps {
35+
echo 'under development'
36+
}
37+
38+
}
39+
40+
stage('Сборка пакета') {
41+
42+
agent { label 'windows' }
43+
44+
steps {
45+
checkout scm
46+
47+
bat 'erase /Q *.ospx'
48+
bat 'chcp 65001 > nul && call opm build .'
49+
50+
stash includes: '*.ospx', name: 'package'
51+
archiveArtifacts '*.ospx'
52+
}
53+
54+
}
55+
56+
stage('Публикация в хабе') {
57+
when {
58+
branch 'master'
59+
}
60+
agent { label 'master' }
61+
steps {
62+
sh 'rm -f *.ospx'
63+
unstash 'package'
64+
65+
sh '''
66+
artifact=`ls -1 *.ospx`
67+
basename=`echo $artifact | sed -r 's/(.+)-.*(.ospx)/\\1/'`
68+
cp $artifact $basename.ospx
69+
sudo rsync -rv *.ospx /var/www/hub.oscript.io/download/$basename/
70+
'''.stripIndent()
71+
}
72+
}
73+
74+
stage('Публикация в нестабильном хабе') {
75+
when {
76+
branch 'develop'
77+
}
78+
agent { label 'master' }
79+
steps {
80+
sh 'rm -f *.ospx'
81+
unstash 'package'
82+
83+
sh '''
84+
artifact=`ls -1 *.ospx`
85+
basename=`echo $artifact | sed -r 's/(.+)-.*(.ospx)/\\1/'`
86+
cp $artifact $basename.ospx
87+
sudo rsync -rv *.ospx /var/www/hub.oscript.io/dev-channel/$basename/
88+
'''.stripIndent()
89+
}
90+
}
91+
}
92+
}

bin/v8unpack.exe

-64 KB
Binary file not shown.

packagedef

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,13 @@
55
.Версия(ПараметрыСистемы_ЛокальнаяВерсия.ВерсияПродукта())
66
.ВерсияСреды("1.0.16")
77
.ЗависитОт("logos")
8-
.ЗависитОт("cmdline")
8+
.ЗависитОт("cmdline", "0.4")
99
.ЗависитОт("tempfiles")
10-
.ЗависитОт("tool1cd", "0.3")
10+
.ЗависитОт("tool1cd", "0.4")
1111
.ЗависитОт("v8runner", "0.7.0")
1212
.ЗависитОт("strings")
1313
.ЗависитОт("1commands", "1.1.1")
14+
.ЗависитОт("v8unpack")
1415
.ВключитьФайл("src")
1516
.ВключитьФайл("tests")
1617
.ВключитьФайл("features")

readme.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,4 +196,18 @@
196196

197197
Выгрузить 2 версии от последней выгруженной, но не более 5-ой версии. Удобно когда выгрузка идет небольшими партиями, при заранее известном максимальном номере версии.
198198

199-
gitsync export store -maxversion 5 -limit 2
199+
gitsync export store -maxversion 5 -limit 2
200+
201+
# Решение проблемы вызванной ошибкой "Не обнаружено свободной лицензии!"
202+
203+
В случае возникновения ошибки "Не обнаружено свободной лицензии!" рекомендуется воспользоваться параметром ```-amount-look-for-license```. Данный параметр может быть использован со следующими командами ```export``` и ```sync```.
204+
При возникновении данной ошибки повторное получение лицензии происходит через 10 сек.
205+
По умолчанию данный параметр равен 1.
206+
207+
Выполнить 5 попыток получения лицензии:
208+
209+
gitsync export -amount-look-for-license 5
210+
211+
Выполнять получение лицензии без ограничения:
212+
213+
gitsync export -amount-look-for-license 0

src/core/Классы/КомандаAll.os

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,11 @@
6464

6565
Пока Истина Цикл
6666

67-
Контроллер.ВыполнитьСинхронизациюПоФайлуНастроек(ЭтотОбъект, ИмяФайлаНастроек, ПараметрыКоманды["-force"] = Истина);
67+
Контроллер.ВыполнитьСинхронизациюПоФайлуНастроек(
68+
ПараметрыКоманды,
69+
ДополнительныеПараметры,
70+
ИмяФайлаНастроек,
71+
ПараметрыКоманды["-force"] = Истина);
6872

6973
Если Интервал <= 0 Тогда
7074

src/core/Классы/КомандаExport.os

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@
2626
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-maxversion", "<номер максимальной версии для выгрузки>");
2727
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-limit", "<выгрузить неболее limit версий от текущей выгруженной>");
2828
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-tempdir", "<Путь к каталогу временных файлов>");
29+
Парсер.ДобавитьПараметрФлагКоманды(ОписаниеКоманды, "-process-fatform-modules", "Переименовывать модули обычных форм в Module.bsl");
30+
31+
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-amount-look-for-license", "<число> количество повторов получения лицензии (попытка подключения каждые 10 сек), 0 - без ограничений");
2932

3033
Парсер.ДобавитьКоманду(ОписаниеКоманды);
3134

@@ -38,6 +41,7 @@
3841
МинВерсия = ПараметрыКоманды["-minversion"];
3942
МаксВерсия = ПараметрыКоманды["-maxversion"];
4043
Лимит = ПараметрыКоманды["-limit"];
44+
ПереименовыватьФайлМодуляОбычнойФормы = ПараметрыКоманды["-process-fatform-modules"];
4145

4246
Если ЛокальныйКаталогГит = Неопределено Тогда
4347

@@ -76,6 +80,7 @@
7680
Распаковщик = РаспаковщикКонфигурации.ПолучитьИНастроитьРаспаковщик(ПараметрыКоманды, ДополнительныеПараметры);
7781
Распаковщик.ВерсияПлатформы = ПараметрыКоманды["-v8version"];
7882
Распаковщик.ДоменПочтыДляGitПоУмолчанию = ПараметрыКоманды["-email"];
83+
Распаковщик.ПереименовыватьФайлМодуляОбычнойФормы = ПереименовыватьФайлМодуляОбычнойФормы;
7984
ДополнительныеПараметры.Лог.Информация("Начинаю выгрузку исходников");
8085
РаспаковщикКонфигурации.ВыполнитьЭкспортИсходников(Распаковщик, ПараметрыКоманды["ПутьКХранилищу"], ЛокальныйКаталогГит, МинВерсия, МаксВерсия, Формат,,, Лимит);
8186
ДополнительныеПараметры.Лог.Информация("Выгрузка завершена");

src/core/Классы/КомандаSync.os

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-format", "<hierarchical|plain>");
2929
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-tempdir", "<Путь к каталогу временных файлов>");
3030
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-push-every-n-commits", "<число> количество коммитов до промежуточной отправки на удаленный сервер");
31+
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-amount-look-for-license", "<число> количество повторов получения лицензии (попытка подключения каждые 10 сек), 0 - без ограничений");
32+
Парсер.ДобавитьПараметрФлагКоманды (ОписаниеКоманды, "-process-fatform-modules", "Переименовывать модули обычных форм в Module.bsl");
3133

3234
Парсер.ДобавитьКоманду(ОписаниеКоманды);
3335

@@ -44,6 +46,7 @@
4446
Парсер.ДобавитьИменованныйПараметр("-format", "<hierarchical|plain>");
4547
Парсер.ДобавитьИменованныйПараметр("-tempdir", "<Путь к каталогу временных файлов>");
4648
Парсер.ДобавитьИменованныйПараметр("-push-every-n-commits", "<число> количество коммитов до промежуточной отправки на удаленный сервер");
49+
Парсер.ДобавитьПараметрФлаг ("-process-fatform-modules", "Переименовывать модули обычных форм в Module.bsl");
4750

4851
КонецПроцедуры // ЗарегистрироватьКоманду
4952

@@ -63,6 +66,7 @@
6366
ИмяВетки = ПараметрыКоманды["-branch"];
6467
Лимит = ПараметрыКоманды["-limit"];
6568
КоличествоКоммитовДоPush = ПараметрыКоманды["-push-every-n-commits"];
69+
ПереименовыватьФайлМодуляОбычнойФормы = ПараметрыКоманды["-process-fatform-modules"];
6670

6771
Если НачальнаяВерсия = Неопределено Тогда
6872

@@ -126,6 +130,7 @@
126130
Распаковщик = РаспаковщикКонфигурации.ПолучитьРаспаковщик(ДополнительныеПараметры);
127131
Распаковщик.ВерсияПлатформы = ВерсияПлатформы;
128132
Распаковщик.ДоменПочтыДляGitПоУмолчанию = ДоменПочты;
133+
Распаковщик.ПереименовыватьФайлМодуляОбычнойФормы = ПереименовыватьФайлМодуляОбычнойФормы;
129134

130135
Лог.Информация("Получение изменений с удаленного узла (pull)");
131136
КодВозврата = Распаковщик.ВыполнитьGitPull(ЛокальныйКаталогГит, URLРепозитория, ИмяВетки);

0 commit comments

Comments
 (0)