Skip to content

Commit c97b74d

Browse files
committed
Merge branch 'release/v0.16.0'
2 parents 56d23d3 + 71200f4 commit c97b74d

19 files changed

+474
-180
lines changed

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ coverage/*
44
bdd-*.xml
55
*.ospx
66
src/oscript.cfg
7-
7+
opm\.cfg
8+
tests/testpackage
89
src/cmd/oscript\.cfg
910
exec.log
1011
test-reports/tests.xml

.travis.yml

+5-5
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ env:
88
- CHANNEL=dev
99
- PACKAGE_NAME=opm
1010
matrix:
11-
- OSCRIPT_VERSION=1_0_20
11+
- OSCRIPT_VERSION=1_0_21
1212
- OSCRIPT_VERSION=night-build
1313
matrix:
1414
allow_failures:
@@ -34,7 +34,7 @@ before_cache:
3434
| xargs -n 2 -t sh -c 'test -e $HOME/docker/$1.tar.gz || docker save $0 | gzip -2 > $HOME/docker/$1.tar.gz'
3535
3636
install:
37-
- docker pull evilbeaver/onescript:1.0.19
37+
- docker pull evilbeaver/onescript:1.0.21
3838

3939
script:
4040
- docker version
@@ -54,7 +54,7 @@ jobs:
5454
- stage: Сборка и публикация github & hub.oscript.io
5555
script: skip
5656
before_deploy:
57-
- docker run -it -v $(pwd):/work_dir evilbeaver/onescript:1.0.20 sh -c 'cd /work_dir; opm build ./ ; exit'
57+
- docker run -it -v $(pwd):/work_dir evilbeaver/onescript:1.0.21 sh -c 'cd /work_dir; opm build ./ ; exit'
5858
deploy:
5959
- provider: releases
6060
api_key: "$GITHUB_OAUTH_TOKEN"
@@ -66,12 +66,12 @@ jobs:
6666
tags: true
6767
- provider: script
6868
skip_cleanup: true
69-
script: docker run -it -e GITHUB_OAUTH_TOKEN=$GITHUB_OAUTH_TOKEN -v $(pwd):/work_dir evilbeaver/onescript:1.0.20 sh -c 'cd /work_dir; opm push --token $GITHUB_OAUTH_TOKEN --channel dev --file ./$PACKAGE_NAME-*.ospx; exit'
69+
script: docker run -it -e GITHUB_OAUTH_TOKEN=$GITHUB_OAUTH_TOKEN -v $(pwd):/work_dir evilbeaver/onescript:1.0.21 sh -c 'cd /work_dir; opm push --token $GITHUB_OAUTH_TOKEN --channel dev --file ./$PACKAGE_NAME-*.ospx; exit'
7070
on:
7171
branch: develop
7272
- provider: script
7373
skip_cleanup: true
74-
script: docker run -it -e GITHUB_OAUTH_TOKEN=$GITHUB_OAUTH_TOKEN -v $(pwd):/work_dir evilbeaver/onescript:1.0.20 sh -c 'cd /work_dir; opm push --token $GITHUB_OAUTH_TOKEN --channel stable --file ./$PACKAGE_NAME-*.ospx; exit'
74+
script: docker run -it -e GITHUB_OAUTH_TOKEN=$GITHUB_OAUTH_TOKEN -v $(pwd):/work_dir evilbeaver/onescript:1.0.21 sh -c 'cd /work_dir; opm push --token $GITHUB_OAUTH_TOKEN --channel stable --file ./$PACKAGE_NAME-*.ospx; exit'
7575
on:
7676
branch: master
7777
tags: true

features/step_definitions/Настройки.os

+8-8
Original file line numberDiff line numberDiff line change
@@ -128,20 +128,20 @@
128128
Если Не СервераПакетов = Неопределено Тогда
129129
Индекс = 1;
130130

131-
Для каждого ДополнительныйСервер Из СервераПакетов Цикл
131+
Для каждого ТекущийСерверПакетов Из СервераПакетов Цикл
132132

133-
Сервер = ПолучитьЗначение(ДополнительныйСервер, "Сервер", "");
134-
Порт = Число(ПолучитьЗначение(ДополнительныйСервер, "Порт", 80));
135-
ПутьНаСервере = ПолучитьЗначение(ДополнительныйСервер, "ПутьНаСервере", "/");
136-
Имя = ПолучитьЗначение(ДополнительныйСервер, "Имя", СтрШаблон("ДопСервер_%1",Индекс));
137-
Приоритет = Число(ПолучитьЗначение(ДополнительныйСервер, "Приоритет", 0));
133+
Сервер = ПолучитьЗначение(ТекущийСерверПакетов, "Сервер", "");
134+
Порт = Число(ПолучитьЗначение(ТекущийСерверПакетов, "Порт", 80));
135+
ПутьНаСервере = ПолучитьЗначение(ТекущийСерверПакетов, "ПутьНаСервере", "/");
136+
РесурсПубликацииПакетов = ПолучитьЗначение(ТекущийСерверПакетов, "РесурсПубликацииПакетов", "/");
137+
Имя = ПолучитьЗначение(ТекущийСерверПакетов, "Имя", СтрШаблон("ДопСервер_%1",Индекс));
138+
Приоритет = Число(ПолучитьЗначение(ТекущийСерверПакетов, "Приоритет", 0));
138139

139140
Если ПустаяСтрока(Сервер) Тогда
140-
// Лог.Отладка("Для дополнительного сервера <%1> не задан адрес", Индекс);
141141
Продолжить;
142142
КонецЕсли;
143143

144-
НастройкиOpm.ДобавитьСерверПакетов(Имя, Сервер, ПутьНаСервере, Порт, Приоритет);
144+
НастройкиOpm.ДобавитьТекущийСерверПакетов(Имя, Сервер, ПутьНаСервере, РесурсПубликацииПакетов, Порт, Приоритет);
145145
Индекс = Индекс +1;
146146

147147
КонецЦикла;

packagedef

+5-5
Original file line numberDiff line numberDiff line change
@@ -83,14 +83,14 @@
8383
Описание.Имя("opm")
8484
.Версия(ВерсияПродукта)
8585
.ВерсияСреды("1.0.19")
86-
.ЗависитОт("fs", "0.5.0")
87-
.ЗависитОт("asserts", "0.4.0")
88-
.ЗависитОт("json", "1.0.1")
86+
.ЗависитОт("fs", "1.0.0")
87+
.ЗависитОт("asserts", "1.3.0")
88+
.ЗависитОт("json", "1.1.1")
8989
.ЗависитОт("fluent", "0.3.1")
90-
.ЗависитОт("logos", "1.0.2")
90+
.ЗависитОт("logos", "1.2.1")
9191
.ЗависитОт("cli", "0.9.10")
9292
.ЗависитОт("tempfiles", "0.2.2")
93-
.ЗависитОт("gitrunner", "1.5.1")
93+
.ЗависитОт("gitrunner", "1.6.0")
9494
.ВключитьФайл("packagedef")
9595
.ВключитьФайл("src")
9696
.ВключитьФайл("oscript_modules")

sonar-qube.sh

100755100644
File mode changed.

src/cmd/Классы/КомандаOpm_Config.os

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33

44
Процедура ОписаниеКоманды(Знач КомандаПриложения) Экспорт
55

6-
КомандаПриложения.Опция("winCreateBashLauncher", "", "Создавать sh-скрипт запуска для пакетов приложений в среде Windows");
7-
КомандаПриложения.Опция("proxyusedefault", "", "Использовать ПроксиПоУмолчанию (системные настройки)");
6+
КомандаПриложения.Опция("winCreateBashLauncher", Ложь, "Создавать sh-скрипт запуска для пакетов приложений в среде Windows");
7+
КомандаПриложения.Опция("proxyusedefault", Ложь, "Использовать ПроксиПоУмолчанию (системные настройки)");
88
КомандаПриложения.Опция("proxyserver", "", "Адрес прокси");
9-
КомандаПриложения.Опция("proxyport", "", "Порт прокси");
9+
КомандаПриложения.Опция("proxyport", "", "Порт прокси").ТЧисло();
1010
КомандаПриложения.Опция("proxyuser", "", "Пользователь прокси");
1111
КомандаПриложения.Опция("proxypass", "", "Пароль прокси");
1212

src/cmd/Классы/КомандаOpm_Install.os

+45-5
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,24 @@
66
КомандаПриложения.Опция("a all", Ложь, "Установить все пакеты, зарегистрированные в хабе");
77
КомандаПриложения.Опция("f file", "", "Указать файл из которого нужно установить пакет. Поддерживает указание маски файла для пакетной установки");
88
КомандаПриложения.Опция("l local", Ложь, "Установить пакеты в локальный каталог oscript_modules");
9+
КомандаПриложения.Опция("s skip-install-deps", Ложь, "признак пропуска установки зависимых пакетов");
10+
КомандаПриложения.Опция("skip-create-app", Ложь, "признак отключения создания файла запуска");
911
КомандаПриложения.Опция("d dest", "", "Переопределить стандартный каталог в который устанавливаются пакеты (вместо oscript_modules)");
12+
13+
ОпцияЗеркала = КомандаПриложения.Опция("m mirror", "", "Указать имя сервера, с которого необходимо ставить пакеты.
14+
| Доступные сервера прописываются в конфигурационном файле opm.cfg, параметр 'СервераПакетов'.")
15+
.ВОкружении("OPM_HUB_MIRROR")
16+
.ТПеречисление();
17+
18+
МенеджерПолучения = Новый МенеджерПолученияПакетов();
19+
Для Каждого ДоступноеЗеркало Из МенеджерПолучения.ИменаДоступныхСерверов() Цикл
20+
ОпцияЗеркала.Перечисление(ДоступноеЗеркало, ДоступноеЗеркало, "Сервер '" + ДоступноеЗеркало + "'");
21+
КонецЦикла;
1022

1123
КомандаПриложения.Аргумент("PACKAGE", "", "Имя пакета в хабе. Чтобы установить конкретную версию, используйте ИмяПакета@ВерсияПакета")
1224
.ТМассивСтрок()
1325
.Обязательный(Ложь);
14-
26+
1527
// КомандаПриложения.Спек = "(-a | --all | -l | --local | -d | --dest )";
1628

1729
КонецПроцедуры
@@ -24,6 +36,10 @@
2436
ФайлПакетаУстановки = КомандаПриложения.ЗначениеОпции("file");
2537
МассивПакетовКУстановке = КомандаПриложения.ЗначениеАргумента("PACKAGE");
2638

39+
НеобходимоУстановитьЗависимости = Не КомандаПриложения.ЗначениеОпции("skip-install-deps");
40+
СоздаватьФайлыЗапуска = НЕ КомандаПриложения.ЗначениеОпции("skip-create-app");
41+
ИмяСервера = КомандаПриложения.ЗначениеОпции("mirror");
42+
2743
РежимУстановки = РежимУстановкиПакетов.Глобально;
2844
Если УстановкаВЛокальныйКаталог Тогда
2945
РежимУстановки = РежимУстановкиПакетов.Локально;
@@ -46,11 +62,18 @@
4662
Лог.Отладка("КаталогУстановки: %1", КаталогУстановки);
4763
Лог.Отладка("ФайлПакетаУстановки: %1", ФайлПакетаУстановки);
4864
Лог.Отладка("МассивПакетовКУстановке: %1", МассивПакетовКУстановке.Количество());
65+
Лог.Отладка("НеобходимоУстановитьЗависимости: %1", НеобходимоУстановитьЗависимости);
66+
Лог.Отладка("СоздаватьФайлыЗапуска: %1", СоздаватьФайлыЗапуска);
67+
68+
НастройкаУстановки = РаботаСПакетами.ПолучитьНастройкуУстановки();
69+
НастройкаУстановки.УстанавливатьЗависимости = НеобходимоУстановитьЗависимости;
70+
НастройкаУстановки.СоздаватьФайлыЗапуска = СоздаватьФайлыЗапуска;
71+
НастройкаУстановки.ИмяСервера = ИмяСервера;
4972

5073
Если УстановкаВсехПакетов Тогда
51-
РаботаСПакетами.УстановитьВсеПакетыИзОблака(РежимУстановки, ЦелевойКаталог);
74+
РаботаСПакетами.УстановитьВсеПакетыИзОблака(РежимУстановки, ЦелевойКаталог, НастройкаУстановки);
5275
ИначеЕсли ПустаяСтрока(ФайлПакетаУстановки) И МассивПакетовКУстановке.Количество() = 0 Тогда
53-
РаботаСПакетами.УстановитьПакетыПоОписаниюПакета(РежимУстановки, ЦелевойКаталог);
76+
РаботаСПакетами.УстановитьПакетыПоОписаниюПакета(РежимУстановки, ЦелевойКаталог, НастройкаУстановки);
5477
ИначеЕсли НЕ ПустаяСтрока(ФайлПакетаУстановки) Тогда
5578

5679
РазобранныйАдрес = СтрРазделить(ФайлПакетаУстановки, ПолучитьРазделительПути());
@@ -67,16 +90,33 @@
6790
ФайлыПоМаске = НайтиФайлы(Путь, Маска);
6891
Для Каждого ФайлПакета Из ФайлыПоМаске Цикл
6992

70-
РаботаСПакетами.УстановитьПакетИзФайла(ФайлПакета.ПолноеИмя, РежимУстановки, ЦелевойКаталог);
93+
РаботаСПакетами.УстановитьПакетИзФайла(ФайлПакета.ПолноеИмя, РежимУстановки, ЦелевойКаталог, НастройкаУстановки);
7194

7295
КонецЦикла;
7396

7497
Иначе
7598

7699
Для каждого ИмяПакета Из МассивПакетовКУстановке Цикл
77-
РаботаСПакетами.УстановитьПакетИзОблака(ИмяПакета, РежимУстановки, ЦелевойКаталог);
100+
101+
Если ЭтоФайлПакета(ИмяПакета) Тогда
102+
103+
РаботаСПакетами.УстановитьПакетИзФайла(ИмяПакета, РежимУстановки, ЦелевойКаталог, НастройкаУстановки);
104+
105+
Иначе
106+
107+
РаботаСПакетами.УстановитьПакетИзОблака(ИмяПакета, РежимУстановки, ЦелевойКаталог, НастройкаУстановки);
108+
109+
КонецЕсли;
110+
111+
78112
КонецЦикла;
79113

80114
КонецЕсли;
81115

82116
КонецПроцедуры
117+
118+
Функция ЭтоФайлПакета(Знач ИмяПакета)
119+
120+
Возврат СтрЗаканчиваетсяНа(НРег(ИмяПакета), ".ospx");
121+
122+
КонецФункции

0 commit comments

Comments
 (0)