mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2024-11-24 08:52:18 +02:00
Изменение способа создания Windows установщика
This commit is contained in:
parent
b27276d63c
commit
b346476f34
@ -3,8 +3,8 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/cli; opm build; opm install oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/cli; opm build; opm install oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
withCredentials([string(credentialsId: 'gpgkey', variable: 'GPGKEY')]) {
|
||||
bat encoding: 'UTF-8', script:'"C:/Program Files (x86)/GnuPG/bin/gpg.exe" --quiet --batch --yes --decrypt --passphrase="%GPGKEY%" --output ./data.json ./data.json.gpg'
|
||||
}
|
||||
|
@ -3,8 +3,8 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
withCredentials([string(credentialsId: 'gpgkey', variable: 'GPGKEY')]) {
|
||||
bat encoding: 'UTF-8', script:'"C:/Program Files (x86)/GnuPG/bin/gpg.exe" --quiet --batch --yes --decrypt --passphrase="%GPGKEY%" --output ./data.json ./data.json.gpg'
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'oscript -make ./src/en/cli/core/Classes/app.os oint.exe'
|
||||
}
|
||||
}
|
||||
@ -2412,7 +2412,7 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'oscript -make ./src/en/cli/core/Classes/app.os oint.exe'
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'oscript -make ./src/ru/cli/core/Classes/app.os oint.exe'
|
||||
}
|
||||
}
|
||||
@ -2412,7 +2412,7 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'oscript -make ./src/ru/cli/core/Classes/app.os oint.exe'
|
||||
}
|
||||
}
|
||||
|
BIN
ci/installer_set/bin/ASPNETHandler.dll
Normal file
BIN
ci/installer_set/bin/ASPNETHandler.dll
Normal file
Binary file not shown.
BIN
ci/installer_set/bin/Newtonsoft.Json.dll
Normal file
BIN
ci/installer_set/bin/Newtonsoft.Json.dll
Normal file
Binary file not shown.
BIN
ci/installer_set/bin/OneScript.Language.dll
Normal file
BIN
ci/installer_set/bin/OneScript.Language.dll
Normal file
Binary file not shown.
BIN
ci/installer_set/bin/ScriptEngine.NativeApi64.dll
Normal file
BIN
ci/installer_set/bin/ScriptEngine.NativeApi64.dll
Normal file
Binary file not shown.
BIN
ci/installer_set/bin/ScriptEngine.dll
Normal file
BIN
ci/installer_set/bin/ScriptEngine.dll
Normal file
Binary file not shown.
14
ci/installer_set/bin/oscript.cfg
Normal file
14
ci/installer_set/bin/oscript.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
#Конфигурационный файл OneScript
|
||||
|
||||
# Корневой каталог системных библиотек
|
||||
lib.system = ../lib
|
||||
|
||||
#Дополнительные каталоги поиска библиотек
|
||||
#lib.additional = C:\somedir;C:somedir2;
|
||||
|
||||
# Настройки кодировок.
|
||||
# Можно указывать стандартное имя кодировки, либо значение default для выбора системной кодировки
|
||||
|
||||
#encoding.script=utf-8
|
||||
|
||||
#systemlanguage = ru
|
3
ci/installer_set/lib/cmdline/lib.config
Normal file
3
ci/installer_set/lib/cmdline/lib.config
Normal file
@ -0,0 +1,3 @@
|
||||
<package-def>
|
||||
<class name="ПарсерАргументовКоманднойСтроки" file="src/cmdline.os"/>
|
||||
</package-def>
|
6
ci/installer_set/lib/cmdline/opm-metadata.xml
Normal file
6
ci/installer_set/lib/cmdline/opm-metadata.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<opm-metadata xmlns="http://oscript.io/schemas/opm-metadata/1.0">
|
||||
<name>cmdline</name>
|
||||
<version>1.0.0</version>
|
||||
<depends-on name="logos" />
|
||||
</opm-metadata>
|
491
ci/installer_set/lib/cmdline/src/cmdline.os
Normal file
491
ci/installer_set/lib/cmdline/src/cmdline.os
Normal file
@ -0,0 +1,491 @@
|
||||
#Использовать logos
|
||||
|
||||
Перем Лог;
|
||||
Перем мПараметры;
|
||||
Перем мПозиционныеПараметры;
|
||||
|
||||
Перем мКоманды;
|
||||
|
||||
Перем мПозицияВСпискеТокенов;
|
||||
Перем мПозицияПозиционныхПараметров;
|
||||
Перем мМассивВходныхПараметров;
|
||||
|
||||
Функция ДобавитьПараметр(Знач ИмяПараметра, Знач Пояснение = "") Экспорт
|
||||
|
||||
Лог.Отладка("ДобавитьПараметр: ИмяПараметра <"+ИмяПараметра+">");
|
||||
|
||||
Возврат ДобавитьПараметрВТаблицу(мПозиционныеПараметры, ИмяПараметра, Пояснение, Ложь, Ложь);
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьИменованныйПараметр(Знач ИмяПараметра, Знач Пояснение = "", Знач Глобальный = Ложь) Экспорт
|
||||
|
||||
Лог.Отладка("ДобавитьИменованныйПараметр: ИмяПараметра <"+ИмяПараметра+">");
|
||||
|
||||
Возврат ДобавитьПараметрВТаблицу(мПараметры, ИмяПараметра, Пояснение, Ложь, Глобальный);
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьПараметрФлаг(Знач ИмяПараметра, Знач Пояснение = "", Знач Глобальный = Ложь) Экспорт
|
||||
|
||||
Лог.Отладка("ДобавитьПараметрФлаг: ИмяПараметра <"+ИмяПараметра+">");
|
||||
|
||||
Возврат ДобавитьПараметрВТаблицу(мПараметры, ИмяПараметра, Пояснение, Истина, Глобальный);
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьПараметрКоллекция(Знач ИмяПараметра, Знач Пояснение = "") Экспорт
|
||||
|
||||
Лог.Отладка("ДобавитьПараметрКоллекция: ИмяПараметра <"+ИмяПараметра+">");
|
||||
|
||||
Возврат ДобавитьПараметрКоллекцияВТаблицу(мПозиционныеПараметры, ИмяПараметра, Пояснение);
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ОписаниеКоманды(Знач ИмяКоманды, Знач Пояснение = "") Экспорт
|
||||
|
||||
НовоеОписание = Новый Структура;
|
||||
НовоеОписание.Вставить("Команда", ИмяКоманды);
|
||||
НовоеОписание.Вставить("Пояснение", Пояснение);
|
||||
НовоеОписание.Вставить("ПозиционныеПараметры", НоваяТаблицаПараметров());
|
||||
НовоеОписание.Вставить("ИменованныеПараметры", НоваяТаблицаПараметров());
|
||||
|
||||
Возврат НовоеОписание;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ДобавитьКоманду(Знач ОписаниеКоманды) Экспорт
|
||||
|
||||
ИмяКоманды = ОписаниеКоманды.Команда;
|
||||
Если мКоманды.Получить(ИмяКоманды) <> Неопределено Тогда
|
||||
ВызватьИсключение СтрШаблон("Команда <%1> уже добавлена ранее, повторное добавление является ошибкой!", ИмяКоманды);
|
||||
КонецЕсли;
|
||||
|
||||
мКоманды.Вставить(ИмяКоманды, ОписаниеКоманды);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Функция ПолучитьКоманду(Знач ИмяКоманды) Экспорт
|
||||
|
||||
Возврат мКоманды[ИмяКоманды];
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьПозиционныйПараметрКоманды(Знач ОписаниеКоманды, Знач ИмяПараметра, Знач Пояснение = "") Экспорт
|
||||
Лог.Отладка("Добавляю позиционный параметр "+ИмяПараметра);
|
||||
Возврат ДобавитьПараметрВТаблицу(ОписаниеКоманды.ПозиционныеПараметры, ИмяПараметра, Пояснение, Ложь);
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьИменованныйПараметрКоманды(Знач ОписаниеКоманды, Знач ИмяПараметра, Знач Пояснение = "") Экспорт
|
||||
Лог.Отладка("Добавляю именованный параметр "+ИмяПараметра);
|
||||
Возврат ДобавитьПараметрВТаблицу(ОписаниеКоманды.ИменованныеПараметры, ИмяПараметра, Пояснение, Ложь);
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьПараметрФлагКоманды(Знач ОписаниеКоманды, Знач ИмяПараметра, Знач Пояснение = "") Экспорт
|
||||
Лог.Отладка("Добавляю параметр-флаг "+ИмяПараметра);
|
||||
Возврат ДобавитьПараметрВТаблицу(ОписаниеКоманды.ИменованныеПараметры, ИмяПараметра, Пояснение, Истина);
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьПараметрКоллекцияКоманды(Знач ОписаниеКоманды, Знач ИмяПараметра, Знач Пояснение = "") Экспорт
|
||||
Лог.Отладка("Добавляю параметр-коллекция "+ИмяПараметра);
|
||||
Возврат ДобавитьПараметрКоллекцияВТаблицу(ОписаниеКоманды.ПозиционныеПараметры, ИмяПараметра, Пояснение);
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьИменованныйПараметрКоллекцияКоманды(Знач ОписаниеКоманды, Знач ИмяПараметра, Знач Пояснение = "") Экспорт
|
||||
Лог.Отладка("Добавляю параметр-коллекция "+ИмяПараметра);
|
||||
Возврат ДобавитьПараметрКоллекцияВТаблицу(ОписаниеКоманды.ИменованныеПараметры, ИмяПараметра, Пояснение);
|
||||
КонецФункции
|
||||
|
||||
Функция РазобратьКоманду(Знач МассивПараметров) Экспорт
|
||||
|
||||
Если МассивПараметров.Количество() = 0 Тогда
|
||||
Возврат Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
ОписаниеКоманды = мКоманды[МассивПараметров[0]];
|
||||
Если ОписаниеКоманды = Неопределено Тогда
|
||||
ВызватьИсключение "Неизвестная команда: " + МассивПараметров[0];
|
||||
КонецЕсли;
|
||||
Лог.Отладка("Разбор команды: " + ОписаниеКоманды.Команда);
|
||||
|
||||
ГлобальныеПараметры = мПараметры.НайтиСтроки(Новый Структура("ЭтоГлобальныйПараметр", Истина));
|
||||
Для Каждого СтрГлобальныйПараметр Из ГлобальныеПараметры Цикл
|
||||
СтрСуществующий = ОписаниеКоманды.ИменованныеПараметры.Найти(СтрГлобальныйПараметр.Имя,"Имя");
|
||||
Если СтрСуществующий = Неопределено Тогда
|
||||
Лог.Отладка("Добавляю глобальный параметр: " + СтрГлобальныйПараметр.Имя);
|
||||
ЗаполнитьЗначенияСвойств(ОписаниеКоманды.ИменованныеПараметры.Добавить(), СтрГлобальныйПараметр,, "ЭтоГлобальныйПараметр");
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
РезультатКоманды = Новый Структура;
|
||||
РезультатКоманды.Вставить("Команда", ОписаниеКоманды.Команда);
|
||||
РезультатКоманды.Вставить("ЗначенияПараметров", Новый Соответствие);
|
||||
|
||||
мМассивВходныхПараметров = МассивПараметров;
|
||||
мПозицияВСпискеТокенов = 1;
|
||||
мПозицияПозиционныхПараметров = 0;
|
||||
|
||||
РезультатКоманды.ЗначенияПараметров = РазобратьАргументы(ОписаниеКоманды.ИменованныеПараметры, ОписаниеКоманды.ПозиционныеПараметры);
|
||||
|
||||
Лог.Отладка("Трассировка РезультатКоманды.ЗначенияПараметров:");
|
||||
ВывестиРезультатРазбора(РезультатКоманды.ЗначенияПараметров);
|
||||
|
||||
Возврат РезультатКоманды;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция Разобрать(Знач ВходнойМассивПараметров) Экспорт
|
||||
|
||||
Если Лог.Уровень() = УровниЛога.Отладка Тогда
|
||||
Лог.Отладка("ВходнойМассивПараметров <%1>", СтрокаПараметров(ВходнойМассивПараметров));
|
||||
КонецЕсли;
|
||||
|
||||
ОписаниеКоманды = Неопределено;
|
||||
Если ВходнойМассивПараметров.Количество() > 0 Тогда
|
||||
ОписаниеКоманды = мКоманды[ВходнойМассивПараметров[0]];
|
||||
КонецЕсли;
|
||||
Если ОписаниеКоманды <> Неопределено Тогда
|
||||
Лог.Отладка("Первый параметр совпадает с именем команды. Переход в режим обработки команд");
|
||||
Возврат РазобратьКоманду(ВходнойМассивПараметров);
|
||||
Иначе
|
||||
мМассивВходныхПараметров = Новый Массив;
|
||||
Для Каждого Элемент Из ВходнойМассивПараметров Цикл
|
||||
мМассивВходныхПараметров.Добавить(Элемент);
|
||||
КонецЦикла;
|
||||
|
||||
мПозицияПозиционныхПараметров = 0;
|
||||
мПозицияВСпискеТокенов = 0;
|
||||
|
||||
РезультатРазбора = РазобратьАргументы(мПараметры, мПозиционныеПараметры);
|
||||
|
||||
Лог.Отладка("Трассировка РезультатКоманды.ЗначенияПараметров:");
|
||||
ВывестиРезультатРазбора(РезультатРазбора);
|
||||
|
||||
Возврат РезультатРазбора;
|
||||
КонецЕсли;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция СтрокаПараметров(Знач ВходнойМассивПараметров)
|
||||
Строка = "";
|
||||
Для Каждого Параметр Из ВходнойМассивПараметров Цикл
|
||||
Строка = Строка + Параметр + " ";
|
||||
КонецЦикла;
|
||||
Возврат Строка;
|
||||
КонецФункции // СтрокаПараметров()
|
||||
|
||||
Функция СправкаПоПараметрам() Экспорт
|
||||
Возврат ТаблицаСправкаПоПараметрам(мПараметры, мПозиционныеПараметры, Ложь);
|
||||
КонецФункции
|
||||
|
||||
Процедура ВывестиСправкуПоПараметрам() Экспорт
|
||||
Сообщить("Параметры:");
|
||||
Для Каждого СтрПараметр Из СправкаПоПараметрам() Цикл
|
||||
Если Не СтрПараметр.ЭтоИменованныйПараметр Тогда
|
||||
Сообщить(СтрШаблон(" <%1> - %2", СтрПараметр.Имя, СтрПараметр.Пояснение));
|
||||
Иначе
|
||||
Сообщить(СтрШаблон(" %1 - %2", СтрПараметр.Имя, СтрПараметр.Пояснение));
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
КонецПроцедуры
|
||||
|
||||
Функция СправкаПоКоманде(Знач ИмяКоманды) Экспорт
|
||||
|
||||
ТаблицаСправкаПоКомандам = СправкаВозможныеКоманды();
|
||||
Возврат ТаблицаСправкаПоКомандам.Найти(ИмяКоманды, "Команда");
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция СправкаВозможныеКоманды() Экспорт
|
||||
|
||||
ТаблицаСправка = Новый ТаблицаЗначений;
|
||||
ТаблицаСправка.Колонки.Добавить("Команда");
|
||||
ТаблицаСправка.Колонки.Добавить("Пояснение");
|
||||
ТаблицаСправка.Колонки.Добавить("Параметры");
|
||||
|
||||
Для Каждого КлючИЗначение Из мКоманды Цикл
|
||||
СтрСправка = ТаблицаСправка.Добавить();
|
||||
ОписаниеКоманды = КлючИЗначение.Значение;
|
||||
|
||||
СтрСправка.Команда = ОписаниеКоманды.Команда;
|
||||
СтрСправка.Пояснение = ОписаниеКоманды.Пояснение;
|
||||
СправкаПоПараметрам = ТаблицаСправкаПоПараметрам(ОписаниеКоманды.ИменованныеПараметры,
|
||||
ОписаниеКоманды.ПозиционныеПараметры, Истина);
|
||||
СтрСправка.Параметры = СправкаПоПараметрам;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Возврат ТаблицаСправка;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ВывестиСправкуПоКомандам() Экспорт
|
||||
|
||||
Сообщить("Возможные команды:");
|
||||
|
||||
ВозможныеКоманды = СправкаВозможныеКоманды();
|
||||
|
||||
МаксШирина = 0;
|
||||
Поле = " ";
|
||||
Для Каждого Команда Из ВозможныеКоманды Цикл
|
||||
ТекШирина = СтрДлина(Команда.Команда);
|
||||
Если ТекШирина > МаксШирина Тогда
|
||||
МаксШирина = ТекШирина;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
Для Каждого Команда Из ВозможныеКоманды Цикл
|
||||
Сообщить(" " + Лев(Команда.Команда + Поле, МаксШирина + 2) + "- " + Команда.Пояснение);
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ВывестиСправкуПоКоманде(Знач ИмяКоманды) Экспорт
|
||||
|
||||
ВозможныеКоманды = СправкаВозможныеКоманды();
|
||||
ОписаниеКоманды = ВозможныеКоманды.Найти(ИмяКоманды, "Команда");
|
||||
Если ОписаниеКоманды = Неопределено Тогда
|
||||
Сообщить("Команда отсуствует: " + ИмяКоманды);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Сообщить("" + ОписаниеКоманды.Команда + " - " + ОписаниеКоманды.Пояснение);
|
||||
Сообщить("Параметры:");
|
||||
Для Каждого СтрПараметр Из ОписаниеКоманды.Параметры Цикл
|
||||
Если Не СтрПараметр.ЭтоИменованныйПараметр Тогда
|
||||
Сообщить(СтрШаблон(" <%1> - %2", СтрПараметр.Имя, СтрПараметр.Пояснение));
|
||||
Иначе
|
||||
Сообщить(СтрШаблон(" %1 - %2", СтрПараметр.Имя, СтрПараметр.Пояснение));
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Функция ТаблицаСправкаПоПараметрам(Знач ИменованныеПараметры, Знач ПозиционныеПараметры, Знач ДобавлятьГлобальныеПараметры)
|
||||
|
||||
ТабРезультат = НоваяТаблицаПараметров();
|
||||
ТабРезультат.Колонки.Добавить("ЭтоИменованныйПараметр");
|
||||
|
||||
Для Каждого Стр Из ПозиционныеПараметры.НайтиСтроки(Новый Структура("ЭтоКоллекция", Ложь)) Цикл
|
||||
СтрРезультат = ТабРезультат.Добавить();
|
||||
ЗаполнитьЗначенияСвойств(СтрРезультат, Стр);
|
||||
СтрРезультат.ЭтоИменованныйПараметр = Ложь;
|
||||
КонецЦикла;
|
||||
|
||||
Для Каждого Стр Из ИменованныеПараметры Цикл
|
||||
СтрРезультат = ТабРезультат.Добавить();
|
||||
ЗаполнитьЗначенияСвойств(СтрРезультат, Стр);
|
||||
СтрРезультат.ЭтоИменованныйПараметр = Истина;
|
||||
КонецЦикла;
|
||||
|
||||
Если ДобавлятьГлобальныеПараметры Тогда
|
||||
|
||||
ГлобальныеПараметры = мПараметры.НайтиСтроки(Новый Структура("ЭтоГлобальныйПараметр", Истина));
|
||||
Для Каждого СтрГлобальныйПараметр Из ГлобальныеПараметры Цикл
|
||||
СтрСуществующий = ИменованныеПараметры.Найти(СтрГлобальныйПараметр.Имя,"Имя");
|
||||
Если СтрСуществующий = Неопределено Тогда
|
||||
СтрРезультат = ТабРезультат.Добавить();
|
||||
ЗаполнитьЗначенияСвойств(СтрРезультат, СтрГлобальныйПараметр,, "ЭтоГлобальныйПараметр");
|
||||
СтрРезультат.ЭтоИменованныйПараметр = Истина;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Для Каждого Стр Из ПозиционныеПараметры.НайтиСтроки(Новый Структура("ЭтоКоллекция", Истина)) Цикл
|
||||
СтрРезультат = ТабРезультат.Добавить();
|
||||
ЗаполнитьЗначенияСвойств(СтрРезультат, Стр);
|
||||
СтрРезультат.ЭтоИменованныйПараметр = Ложь;
|
||||
КонецЦикла;
|
||||
|
||||
Возврат ТабРезультат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура РазобратьИменованныйПараметр(Знач Токен, Значение, Знач ИменованныеПараметры, Знач РезультатРазбора)
|
||||
Перем ЗначениеТокена;
|
||||
|
||||
Лог.Отладка("Это именованный параметр: " + Токен + " ?");
|
||||
СтрПараметр = ИменованныеПараметры.Найти(Токен, "Имя");
|
||||
//TODO: для параметров вида --param=value значение получаем сразу и передаем в процедуру,
|
||||
// а в случаи пустого получаем следующий параметр.
|
||||
ЗначениеТокена = ?(Значение = Неопределено, СледующийОбязательныйТокен(Токен), Значение);
|
||||
Если СтрПараметр.ЭтоКоллекция Тогда
|
||||
Лог.Отладка("Добавляем элемент в коллекцию");
|
||||
ТекКолекция = РезультатРазбора[Токен];
|
||||
Если ТекКолекция = Неопределено Тогда
|
||||
ТекКолекция = Новый Массив;
|
||||
РезультатРазбора[Токен] = ТекКолекция;
|
||||
КонецЕсли;
|
||||
ТекКолекция.Добавить(ЗначениеТокена);
|
||||
Иначе
|
||||
РезультатРазбора[Токен] = ЗначениеТокена;
|
||||
КонецЕсли;
|
||||
Лог.Отладка("Нашли значение именованного параметра: " + РезультатРазбора[Токен]);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Функция РазобратьАргументы(Знач ИменованныеПараметры, Знач ПозиционныеПараметры)
|
||||
Лог.Отладка("Попадаю в РазобратьАргументы");
|
||||
|
||||
РезультатРазбора = Новый Соответствие;
|
||||
|
||||
Для Каждого СтрПараметр Из ИменованныеПараметры.НайтиСтроки(Новый Структура("ЭтоФлаг",Истина)) Цикл
|
||||
Лог.Отладка("Сбрасываю параметр-флаг: " + СтрПараметр.Имя);
|
||||
РезультатРазбора[СтрПараметр.Имя] = Ложь;
|
||||
КонецЦикла;
|
||||
|
||||
Если мМассивВходныхПараметров.Количество() = 0 Тогда
|
||||
Лог.Отладка("Параметров не передали.");
|
||||
Возврат РезультатРазбора;
|
||||
КонецЕсли;
|
||||
|
||||
ТекущийПараметрКоллекция = Неопределено;
|
||||
Пока Истина Цикл
|
||||
|
||||
Токен = СледующийТокен();
|
||||
Лог.Отладка("Выбран токен: " + Токен);
|
||||
Если Токен = Неопределено Тогда
|
||||
Лог.Отладка("Закончились токены");
|
||||
|
||||
Лог.Отладка("Трассировка РезультатРазбора:");
|
||||
ВывестиРезультатРазбора(РезультатРазбора);
|
||||
|
||||
Прервать;
|
||||
КонецЕсли;
|
||||
|
||||
Если ТекущийПараметрКоллекция <> Неопределено Тогда
|
||||
ТекущийПараметрКоллекция.Добавить(Токен);
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
Если ЭтоИменованныйПараметр(Токен, ИменованныеПараметры) Тогда
|
||||
РазобратьИменованныйПараметр(Токен, Неопределено, ИменованныеПараметры, РезультатРазбора);
|
||||
ИначеЕсли ЭтоПараметрФлаг(Токен, ИменованныеПараметры) Тогда
|
||||
Лог.Отладка("Это параметр-флаг: " + Токен + " ?");
|
||||
РезультатРазбора[Токен] = Истина;
|
||||
Лог.Отладка("Нашли параметр-флаг: " + РезультатРазбора[Токен]);
|
||||
ИначеЕсли СтрНайти(Токен, "=") > 0 И Лев(Токен, 2) = "--" Тогда
|
||||
Индекс = СтрНайти(Токен, "=");
|
||||
КлючТокена = Лев(Токен, Индекс-1);
|
||||
ЗначениеТокена = Строка(Сред(Токен, Индекс + 1)); //Для указания пустого значения, можно --param=
|
||||
Если ЭтоИменованныйПараметр(СокрЛП(КлючТокена), ИменованныеПараметры) Тогда
|
||||
РазобратьИменованныйПараметр(КлючТокена, ЗначениеТокена, ИменованныеПараметры, РезультатРазбора);
|
||||
Иначе
|
||||
ВызватьИсключение "Ожидается именованный параметр " + КлючТокена;
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
ОписаниеПараметра = СледующийПозиционныйПараметр(ПозиционныеПараметры);
|
||||
Если ОписаниеПараметра.ЭтоКоллекция Тогда
|
||||
Лог.Отладка("Перехожу к чтению параметра-коллекции <"+ОписаниеПараметра.Имя+">");
|
||||
ТекущийПараметрКоллекция = Новый Массив;
|
||||
РезультатРазбора[ОписаниеПараметра.Имя] = ТекущийПараметрКоллекция;
|
||||
ТекущийПараметрКоллекция.Добавить(Токен);
|
||||
Иначе
|
||||
Лог.Отладка("Установлено значение позиционного параметра <" + ОписаниеПараметра.Имя + " = " + Токен + ">");
|
||||
РезультатРазбора[ОписаниеПараметра.Имя] = Токен;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Возврат РезультатРазбора;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ВывестиРезультатРазбора(РезультатРазбора)
|
||||
Если Лог.Уровень() = УровниЛога.Отладка Тогда
|
||||
Для Каждого КлючЗначение Из РезультатРазбора Цикл
|
||||
Лог.Отладка(" "+КлючЗначение.Ключ+":"+КлючЗначение.Значение);
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
КонецПроцедуры
|
||||
|
||||
Функция СледующийТокен()
|
||||
Если мПозицияВСпискеТокенов = мМассивВходныхПараметров.Количество() Тогда
|
||||
Возврат Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Токен = мМассивВходныхПараметров[мПозицияВСпискеТокенов];
|
||||
мПозицияВСпискеТокенов = мПозицияВСпискеТокенов + 1;
|
||||
|
||||
Возврат Токен;
|
||||
КонецФункции
|
||||
|
||||
Функция СледующийОбязательныйТокен(Знач ИскомыйПараметр)
|
||||
Токен = СледующийТокен();
|
||||
Если Токен = Неопределено Тогда
|
||||
ВызватьИсключение "Ожидается значение параметра " + ИскомыйПараметр;
|
||||
КонецЕсли;
|
||||
Возврат Токен;
|
||||
КонецФункции
|
||||
|
||||
Функция ЭтоИменованныйПараметр(Знач Токен, Знач ИменованныеПараметры)
|
||||
Лог.Отладка("Ищу именованный параметр "+Токен);
|
||||
СтрПараметр = ИменованныеПараметры.Найти(Токен, "Имя");
|
||||
Возврат СтрПараметр <> Неопределено и Не СтрПараметр.ЭтоФлаг;
|
||||
КонецФункции
|
||||
|
||||
Функция ЭтоПараметрФлаг(Знач Токен, Знач ИменованныеПараметры)
|
||||
Лог.Отладка("Ищу параметр-флаг "+Токен);
|
||||
СтрПараметр = ИменованныеПараметры.Найти(Токен, "Имя");
|
||||
Возврат СтрПараметр <> Неопределено и СтрПараметр.ЭтоФлаг;
|
||||
КонецФункции
|
||||
|
||||
Функция ЗакончилисьПозиционныеПараметры(ПозиционныеПараметры)
|
||||
Возврат мПозицияПозиционныхПараметров = ПозиционныеПараметры.Количество();
|
||||
КонецФункции
|
||||
|
||||
Функция СледующийПозиционныйПараметр(Знач ПозиционныеПараметры)
|
||||
Если мПозицияПозиционныхПараметров = ПозиционныеПараметры.Количество() Тогда
|
||||
ВызватьИсключение СтрШаблон("Неизвестный параметр в позиции %1 параметр %2 %3%4", мПозицияВСпискеТокенов, мМассивВходныхПараметров.Получить(мПозицияВСпискеТокенов - 1), Символы.ПС, СтрокаПараметров(мМассивВходныхПараметров));
|
||||
КонецЕсли;
|
||||
|
||||
СтрПараметр = ПозиционныеПараметры[мПозицияПозиционныхПараметров];
|
||||
мПозицияПозиционныхПараметров = мПозицияПозиционныхПараметров + 1;
|
||||
Возврат СтрПараметр;
|
||||
КонецФункции
|
||||
|
||||
Процедура Инит()
|
||||
Лог = Логирование.ПолучитьЛог("oscript.lib.cmdline");
|
||||
|
||||
мПараметры = НоваяТаблицаПараметров();
|
||||
мПозиционныеПараметры = НоваяТаблицаПараметров();
|
||||
мКоманды = Новый Соответствие;
|
||||
КонецПроцедуры
|
||||
|
||||
Функция НоваяТаблицаПараметров()
|
||||
|
||||
Таблица = Новый ТаблицаЗначений;
|
||||
Таблица.Колонки.Добавить("Имя");
|
||||
Таблица.Колонки.Добавить("ЭтоФлаг");
|
||||
Таблица.Колонки.Добавить("Пояснение");
|
||||
Таблица.Колонки.Добавить("ЭтоГлобальныйПараметр");
|
||||
Таблица.Колонки.Добавить("ЭтоКоллекция");
|
||||
|
||||
Возврат Таблица;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьПараметрВТаблицу(Знач Таблица, Знач Имя, Знач Пояснение, Знач Флаг, Знач Глобальный = Ложь)
|
||||
СтрПараметр = Таблица.Добавить();
|
||||
СтрПараметр.Имя = Строка(Имя);
|
||||
СтрПараметр.ЭтоФлаг = Флаг;
|
||||
СтрПараметр.Пояснение = Пояснение;
|
||||
СтрПараметр.ЭтоГлобальныйПараметр = Глобальный;
|
||||
СтрПараметр.ЭтоКоллекция = Ложь;
|
||||
|
||||
Возврат СтрПараметр;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ДобавитьПараметрКоллекцияВТаблицу(Знач Таблица, Знач Имя, Знач Пояснение)
|
||||
|
||||
СтрПараметр = ДобавитьПараметрВТаблицу(Таблица, Имя, Пояснение, Ложь);
|
||||
СтрПараметр.ЭтоКоллекция = Истина;
|
||||
|
||||
Возврат СтрПараметр;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Инит();
|
3
ci/installer_set/lib/coloratos/lib.config
Normal file
3
ci/installer_set/lib/coloratos/lib.config
Normal file
@ -0,0 +1,3 @@
|
||||
<package-def>
|
||||
<module name="ЦветнойВывод" file="src/ЦветнойВывод.os"/>
|
||||
</package-def>
|
6
ci/installer_set/lib/coloratos/opm-metadata.xml
Normal file
6
ci/installer_set/lib/coloratos/opm-metadata.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<opm-metadata xmlns="http://oscript.io/schemas/opm-metadata/1.0">
|
||||
<name>coloratos</name>
|
||||
<version>0.3.0</version>
|
||||
<engine-version>1.7.0</engine-version>
|
||||
</opm-metadata>
|
169
ci/installer_set/lib/coloratos/src/ЦветнойВывод.os
Normal file
169
ci/installer_set/lib/coloratos/src/ЦветнойВывод.os
Normal file
@ -0,0 +1,169 @@
|
||||
#Область ПрограммныйИнтерфейс
|
||||
|
||||
// Переопределение глобального метода Сообщить()
|
||||
//
|
||||
// Параметры:
|
||||
// ТекстСообщения - Строка - Текст собщения с цветными полями по шаблону (Текст|#color=Цвет)
|
||||
// пСтатусСообщения - СтатусСообщения - системное перечисление СтатусСообщения
|
||||
// соотвествует типу второго параметра глобального метода Сообщить()
|
||||
//
|
||||
Процедура Сообщить(Знач ТекстСообщения = "", Знач пСтатусСообщения = Неопределено) Экспорт
|
||||
|
||||
Если пСтатусСообщения = СтатусСообщения.Важное Тогда
|
||||
ЦветТекста = "Красный";
|
||||
ИначеЕсли пСтатусСообщения = СтатусСообщения.Внимание Тогда
|
||||
ЦветТекста = "Желтый";
|
||||
ИначеЕсли пСтатусСообщения = СтатусСообщения.Информация Тогда
|
||||
ЦветТекста = "Зеленый";
|
||||
ИначеЕсли пСтатусСообщения = СтатусСообщения.ОченьВажное Тогда
|
||||
ЦветТекста = "Красный";
|
||||
Иначе
|
||||
ЦветТекста = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
ВывестиСтроку(ТекстСообщения, ЦветТекста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Вывод строки цветного текста в консоль
|
||||
// с завершением строки (переводом на новую строку)
|
||||
//
|
||||
// Параметры:
|
||||
// ТекстСообщения - Строка - Текст собщения с цветными полями по шаблону
|
||||
// `(Текст|#color=Цвет)`
|
||||
// ЦветТекста - Строка - Строковое значение перечисления ЦветКонсоли
|
||||
//
|
||||
Процедура ВывестиСтроку(Знач ТекстСообщения = "", Знач ЦветТекста = Неопределено) Экспорт
|
||||
|
||||
Вывести(ТекстСообщения, ЦветТекста);
|
||||
|
||||
Консоль.Вывести(Символы.ПС);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Вывод строки цветного текста в консоль
|
||||
// без завершения строки
|
||||
//
|
||||
// Параметры:
|
||||
// ТекстСообщения - Строка - Текст собщения с цветными полями по шаблону
|
||||
// `(Текст|#color=Цвет)`
|
||||
// ЦветТекста - Строка - Строковое значение перечисления ЦветКонсоли
|
||||
//
|
||||
Процедура Вывести(Знач ТекстСообщения, Знач ЦветТекста = Неопределено) Экспорт
|
||||
|
||||
Если Врег(ЦветТекста) = "МОНОХРОМ" Тогда
|
||||
ЦветТекста = Неопределено;
|
||||
ЦветнойВыводРазрешен = Ложь;
|
||||
Иначе
|
||||
ЦветнойВыводРазрешен = Истина;
|
||||
КонецЕсли;
|
||||
|
||||
ТаблицаПолей = РазобратьСтроку(ТекстСообщения, ЦветТекста);
|
||||
|
||||
Если ЦветнойВыводРазрешен Тогда
|
||||
|
||||
ПредыдущееЗначениеЦветаТекта = Консоль.ЦветТекста;
|
||||
Если НЕ ЗначениеЗаполнено(ПредыдущееЗначениеЦветаТекта) Тогда
|
||||
ПредыдущееЗначениеЦветаТекта = ЦветКонсоли.Белый;
|
||||
КонецЕсли;
|
||||
|
||||
Если ЦветТекста = Неопределено Тогда
|
||||
ЦветТекста = ПредыдущееЗначениеЦветаТекта;
|
||||
КонецЕсли;
|
||||
Для Каждого Поле Из ТаблицаПолей Цикл
|
||||
Если ЗначениеЗаполнено(Поле.Цвет) Тогда
|
||||
Консоль.ЦветТекста = ЦветКонсоли[Поле.Цвет];
|
||||
Иначе
|
||||
Консоль.ЦветТекста = ПредыдущееЗначениеЦветаТекта;
|
||||
КонецЕсли;
|
||||
Консоль.Вывести(Поле.Текст);
|
||||
КонецЦикла;
|
||||
|
||||
Консоль.ЦветТекста = ПредыдущееЗначениеЦветаТекта;
|
||||
|
||||
Иначе
|
||||
|
||||
МассивПолей = ТаблицаПолей.ВыгрузитьКолонку("Текст");
|
||||
ТекстСообщенияБезЦветныхПолей = СтрСоединить(МассивПолей);
|
||||
|
||||
Консоль.Вывести(ТекстСообщенияБезЦветныхПолей);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыФункции
|
||||
|
||||
Функция РазобратьСтроку(ТекстСообщения, ЦветТекста)
|
||||
|
||||
Длина = СтрДлина(ТекстСообщения);
|
||||
|
||||
Таблица = Новый ТаблицаЗначений();
|
||||
Таблица.Колонки.Добавить("Текст");
|
||||
Таблица.Колонки.Добавить("Цвет");
|
||||
|
||||
тзЦветныеПоля = ЦветныеПоля(ТекстСообщения);
|
||||
|
||||
Поз = 1;
|
||||
Для Каждого ЦветПоле Из тзЦветныеПоля Цикл
|
||||
Если Поз < ЦветПоле.Позиция Тогда
|
||||
Текст = Сред(ТекстСообщения, Поз, ЦветПоле.Позиция - Поз);
|
||||
Стр = Таблица.Добавить();
|
||||
Стр.Текст = Текст;
|
||||
Стр.Цвет = ЦветТекста;
|
||||
КонецЕсли;
|
||||
|
||||
Стр = Таблица.Добавить();
|
||||
Стр.Текст = ЦветПоле.Текст;
|
||||
Стр.Цвет = ЦветПоле.Цвет;
|
||||
|
||||
Поз = ЦветПоле.Позиция + ЦветПоле.Длина;
|
||||
КонецЦикла;
|
||||
|
||||
Если Поз-1 <= Длина Тогда
|
||||
Текст = Сред(ТекстСообщения, Поз);
|
||||
Стр = Таблица.Добавить();
|
||||
Стр.Текст = Текст;
|
||||
Стр.Цвет = ЦветТекста;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Таблица;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ЦветныеПоля(ТекстСообщения)
|
||||
|
||||
РВ = Новый РегулярноеВыражение(ШаблонЦветнойПодстроки());
|
||||
Совпадения = РВ.НайтиСовпадения(ТекстСообщения);
|
||||
|
||||
ЦветныеПоля = Новый ТаблицаЗначений;
|
||||
ЦветныеПоля.Колонки.Добавить("Позиция");
|
||||
ЦветныеПоля.Колонки.Добавить("Текст");
|
||||
ЦветныеПоля.Колонки.Добавить("Длина");
|
||||
ЦветныеПоля.Колонки.Добавить("Цвет");
|
||||
|
||||
Для Каждого Совпадение Из Совпадения Цикл
|
||||
Группы = Совпадение.Группы;
|
||||
стр = ЦветныеПоля.Добавить();
|
||||
стр.Позиция = Совпадение.Индекс+1;
|
||||
стр.Текст = Группы[1].Значение;
|
||||
стр.Длина = Совпадение.Длина;
|
||||
ЦветИмя = Группы[2].Значение;
|
||||
стр.Цвет = ЦветИмя;
|
||||
КонецЦикла;
|
||||
|
||||
ЦветныеПоля.Сортировать("Позиция");
|
||||
|
||||
Возврат ЦветныеПоля;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ШаблонЦветнойПодстроки()
|
||||
|
||||
Возврат "\((.+?)\|#color=(.+?)\)"; // (Текст|#color=Цвет)
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
2
ci/installer_set/oint.bat
Normal file
2
ci/installer_set/oint.bat
Normal file
@ -0,0 +1,2 @@
|
||||
@call oscript "%~dp0/lib/oint-cli/core/Classes/app.os" %*
|
||||
@exit /b %ERRORLEVEL%
|
4
ci/main
4
ci/main
@ -24,8 +24,8 @@ pipeline {
|
||||
|
||||
stage('Local update'){
|
||||
steps {
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -5,10 +5,10 @@ pipeline {
|
||||
steps {
|
||||
|
||||
withCredentials([string(credentialsId: 'opm-token', variable: 'TOKEN')]) {
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm push --token $ENV:TOKEN --channel stable --file oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm push --token $ENV:TOKEN --channel stable --file oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build;'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm push --token $ENV:TOKEN --channel stable --file oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm push --token $ENV:TOKEN --channel stable --file oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -5,8 +5,8 @@ pipeline {
|
||||
steps {
|
||||
|
||||
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
|
||||
|
||||
}
|
||||
|
@ -45,7 +45,7 @@
|
||||
| stages {
|
||||
| stage('Prepare'){
|
||||
| steps{
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'oscript -make ./src/" + Язык + "/cli/core/Classes/app.os oint.exe'
|
||||
| }
|
||||
| }
|
||||
@ -78,7 +78,7 @@
|
||||
| stages {
|
||||
| stage('Prepare'){
|
||||
| steps{
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'oscript -make ./src/" + Язык + "/cli/core/Classes/app.os oint.exe'
|
||||
| }
|
||||
| }
|
||||
|
@ -45,7 +45,7 @@
|
||||
| stages {
|
||||
| stage('Prepare'){
|
||||
| steps{
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'oscript -make ./src/" + Язык + "/cli/core/Classes/app.os oint.exe'
|
||||
| }
|
||||
| }
|
||||
@ -78,7 +78,7 @@
|
||||
| stages {
|
||||
| stage('Prepare'){
|
||||
| steps{
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'oscript -make ./src/" + Язык + "/cli/core/Classes/app.os oint.exe'
|
||||
| }
|
||||
| }
|
||||
|
@ -136,8 +136,8 @@
|
||||
| stages {
|
||||
| stage('Prepare'){
|
||||
| steps{
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/cli; opm build; opm install oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
| powershell encoding: 'UTF-8', script:'cd ./src/" + Язык + "/cli; opm build; opm install oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
| withCredentials([string(credentialsId: 'gpgkey', variable: 'GPGKEY')]) {
|
||||
| bat encoding: 'UTF-8', script:'""C:/Program Files (x86)/GnuPG/bin/gpg.exe"" --quiet --batch --yes --decrypt --passphrase=""%GPGKEY%"" --output ./data.json ./data.json.gpg'
|
||||
| }
|
||||
|
@ -7,18 +7,22 @@
|
||||
Перем ПутьВыгрузки;
|
||||
Перем Кугвин;
|
||||
|
||||
|
||||
Процедура НачалоРаботы()
|
||||
|
||||
Репозиторий = "https://github.com/Bayselonarrend/OpenIntegrations";
|
||||
Версия = "1.15.0";
|
||||
Версия = "1.15.1";
|
||||
Режим = "CONFIG";
|
||||
|
||||
//Локальные данные
|
||||
Файл1С = """C:\Program Files\1cv8\8.3.18.1208\bin\1cv8.exe""";
|
||||
ПутьКРепозиторию = "C:\ProgramData\Jenkins\.jenkins\workspace\Release";
|
||||
Сервер = "AIONIOTISCORE:1742";
|
||||
ПутьВыгрузки = "C:\ProgramData\Jenkins\.jenkins\workspace\Release\" + Версия + "\";
|
||||
Кугвин = "C:\cygwin64\bin\";
|
||||
Файл1С = """C:\Program Files\1cv8\8.3.18.1208\bin\1cv8.exe""";
|
||||
Сервер = "AIONIOTISCORE:1742";
|
||||
Кугвин = "C:\cygwin64\bin\";
|
||||
|
||||
//ПутьКРепозиторию = "C:\ProgramData\Jenkins\.jenkins\workspace\Release";
|
||||
ПутьКРепозиторию = "C:\Repos\OPI";
|
||||
ПутьВыгрузки = ПутьКРепозиторию + "\" + Версия + "\";
|
||||
|
||||
//----------------
|
||||
|
||||
ОбъектПутьВыгрузки = Новый Файл(ПутьВыгрузки);
|
||||
@ -202,6 +206,8 @@
|
||||
СборкаEXE = "oscript -make """ + ПутьCLI + """ """ + ПутьВыгрузки + "oint.exe""";
|
||||
ЗапуститьПриложение(СборкаEXE, , Истина);
|
||||
|
||||
ПереместитьФайл(ПутьВыгрузки + "oint.exe", ПутьВыгрузки + "oint_" + Префикс + ".exe");
|
||||
|
||||
Сообщить("End EXE");
|
||||
|
||||
КонецПроцедуры
|
||||
@ -274,7 +280,7 @@
|
||||
Префикс = Данные["Префикс"];
|
||||
|
||||
//Setup
|
||||
|
||||
|
||||
ТекстISS = Новый ТекстовыйДокумент();
|
||||
ТекстISS.Прочитать(ПутьISS);
|
||||
|
||||
@ -293,7 +299,7 @@
|
||||
|
||||
СборкаSetup = """C:\Program Files (x86)\Inno Setup 6\Compil32.exe"" /cc """ + ПутьISS + """";
|
||||
ЗапуститьПриложение(СборкаSetup, , Истина);
|
||||
ПереместитьФайл(ПутьВыгрузки + "oint.exe", ПутьВыгрузки + "oint_" + Префикс + ".exe");
|
||||
|
||||
|
||||
Сообщить("End ISS");
|
||||
|
||||
|
@ -3,8 +3,8 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/cli; opm build; opm install oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/en/cli; opm build; opm install oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
withCredentials([string(credentialsId: 'gpgkey', variable: 'GPGKEY')]) {
|
||||
bat encoding: 'UTF-8', script:'"C:/Program Files (x86)/GnuPG/bin/gpg.exe" --quiet --batch --yes --decrypt --passphrase="%GPGKEY%" --output ./data.json ./data.json.gpg'
|
||||
}
|
||||
|
@ -3,8 +3,8 @@ pipeline {
|
||||
stages {
|
||||
stage('Prepare'){
|
||||
steps{
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.0.ospx; del oint-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install oint-cli-1.15.0.ospx; del oint-cli-1.15.0.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install oint-1.15.1.ospx; del oint-1.15.1.ospx'
|
||||
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install oint-cli-1.15.1.ospx; del oint-cli-1.15.1.ospx'
|
||||
withCredentials([string(credentialsId: 'gpgkey', variable: 'GPGKEY')]) {
|
||||
bat encoding: 'UTF-8', script:'"C:/Program Files (x86)/GnuPG/bin/gpg.exe" --quiet --batch --yes --decrypt --passphrase="%GPGKEY%" --output ./data.json ./data.json.gpg'
|
||||
}
|
||||
|
10
docs/docusaurus/package-lock.json
generated
10
docs/docusaurus/package-lock.json
generated
@ -6285,7 +6285,7 @@
|
||||
"range-parser": "~1.2.1",
|
||||
"safe-buffer": "5.2.1",
|
||||
"send": "0.18.0",
|
||||
"serve-static": "1.15.0",
|
||||
"serve-static": "1.15.1",
|
||||
"setprototypeof": "1.2.0",
|
||||
"statuses": "2.0.1",
|
||||
"type-is": "~1.6.18",
|
||||
@ -8577,8 +8577,8 @@
|
||||
"integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow=="
|
||||
},
|
||||
"node_modules/lunr-languages": {
|
||||
"version": "1.15.0",
|
||||
"resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.15.0.tgz",
|
||||
"version": "1.15.1",
|
||||
"resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.15.1.tgz",
|
||||
"integrity": "sha512-hWUAb2KqM3L7J5bcrngszzISY4BxrXn/Xhbb9TTCJYEGqlR1nG67/M14sp09+PTIRklobrn57IAxcdcO/ZFyNA=="
|
||||
},
|
||||
"node_modules/mark.js": {
|
||||
@ -13490,8 +13490,8 @@
|
||||
}
|
||||
},
|
||||
"node_modules/serve-static": {
|
||||
"version": "1.15.0",
|
||||
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
|
||||
"version": "1.15.1",
|
||||
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.1.tgz",
|
||||
"integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
|
||||
"dependencies": {
|
||||
"encodeurl": "~1.0.2",
|
||||
|
@ -1,9 +1,10 @@
|
||||
#define MyAppName "OInt"
|
||||
#define MyAppVersion "1.15.0"
|
||||
#define MyAppVersion "1.15.1"
|
||||
#define MyAppPublisher "bayselonarrend"
|
||||
#define MyAppURL "https://github.com/Bayselonarrend/OpenIntegrations"
|
||||
#define MyAppExeName "oint.exe"
|
||||
#define MyAppExeName "oint.bat"
|
||||
#define Repo "C:\ProgramData\Jenkins\.jenkins\workspace\Release\"
|
||||
#define OScript "C:\Program Files\OneScript\"
|
||||
|
||||
[Setup]
|
||||
DisableWelcomePage = no
|
||||
@ -27,8 +28,11 @@ WizardStyle = modern
|
||||
OutputBaseFilename = oint_{#MyAppVersion}_installer_en
|
||||
|
||||
[Files]
|
||||
Source: "{#Repo}\{#MyAppVersion}\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion
|
||||
Source: "{#Repo}\src\ru\cli\start.bat"; DestDir: "{app}"
|
||||
Source: "{#Repo}\ci\installer_set\*"; DestDir: "{app}"; Flags: recursesubdirs
|
||||
|
||||
Source: "{#OScript}\lib\oint\*"; DestDir: "{app}\lib\oint"; Flags: recursesubdirs
|
||||
Source: "{#OScript}\lib\oint-cli\*"; DestDir: "{app}\lib\oint-cli"; Flags: recursesubdirs
|
||||
|
||||
Source: "{#Repo}\Media\logo.bmp"; Flags: dontcopy
|
||||
|
||||
[Icons]
|
||||
|
@ -1,10 +1,10 @@
|
||||
#define MyAppName "OInt"
|
||||
#define MyAppVersion "1.15.0"
|
||||
#define MyAppVersion "1.15.1"
|
||||
#define MyAppPublisher "bayselonarrend"
|
||||
#define MyAppURL "https://github.com/Bayselonarrend/OpenIntegrations"
|
||||
#define MyAppExeName "oint.exe"
|
||||
#define GDrive "G:"
|
||||
#define Repo "C:\ProgramData\Jenkins\.jenkins\workspace\Release"
|
||||
#define MyAppExeName "oint.bat"
|
||||
#define Repo "C:\ProgramData\Jenkins\.jenkins\workspace\Release\"
|
||||
#define OScript "C:\Program Files\OneScript\"
|
||||
|
||||
[Setup]
|
||||
DisableWelcomePage = no
|
||||
@ -31,8 +31,11 @@ OutputBaseFilename = oint_{#MyAppVersion}_installer_ru
|
||||
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
|
||||
|
||||
[Files]
|
||||
Source: "{#Repo}\{#MyAppVersion}\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion
|
||||
Source: "{#Repo}\src\ru\cli\start.bat"; DestDir: "{app}"
|
||||
Source: "{#Repo}\ci\installer_set\*"; DestDir: "{app}"; Flags: recursesubdirs
|
||||
|
||||
Source: "{#OScript}\lib\oint\*"; DestDir: "{app}\lib\oint"; Flags: recursesubdirs
|
||||
Source: "{#OScript}\lib\oint-cli\*"; DestDir: "{app}\lib\oint-cli"; Flags: recursesubdirs
|
||||
|
||||
Source: "{#Repo}\Media\logo.bmp"; Flags: dontcopy
|
||||
|
||||
[Icons]
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.15.0",
|
||||
"version": "1.15.1",
|
||||
"root": "./src/",
|
||||
"mainLang": "ru",
|
||||
"packageSrc": "OInt/",
|
||||
|
@ -1,5 +1,5 @@
|
||||
Описание.Имя("oint")
|
||||
.Версия("1.15.0")
|
||||
.Версия("1.15.1")
|
||||
.Автор("bayselonarrend")
|
||||
.АдресАвтора("bayselonarrend@gmail.com")
|
||||
.Описание("Открытый пакет интеграций с популярными API")
|
||||
|
@ -26,7 +26,7 @@
|
||||
<usePurposes>PersonalComputer</usePurposes>
|
||||
<scriptVariant>English</scriptVariant>
|
||||
<vendor>Bayselonarrend</vendor>
|
||||
<version>1.15.0</version>
|
||||
<version>1.15.1</version>
|
||||
<detailedInformation>
|
||||
<key>en</key>
|
||||
<value>The Open Integration Package is a set of libraries for integrating with some popular APIs for 1C:Enterprise. It consists of common modules, each responsible for its own API, as well as several shared tool modules..</value>
|
||||
|
@ -1,12 +0,0 @@
|
||||
-s dir
|
||||
--name oint
|
||||
--license mit
|
||||
--version 1.15.0
|
||||
--architecture all
|
||||
--depends mono-complete
|
||||
--description "OInt CLI - приложение для работы с API различных онлайн-сервисов из командной строки"
|
||||
--url "https://openintegrations.dev/"
|
||||
--maintainer "Anton Titovets <bayselonarrend@gmail.com>"
|
||||
|
||||
|
||||
oint=/usr/bin/oint
|
@ -1,7 +1,7 @@
|
||||
#Использовать "./internal"
|
||||
|
||||
Функция ПолучитьВерсию() Экспорт
|
||||
Возврат "1.15.0";
|
||||
Возврат "1.15.1";
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьСоответствиеКомандМодулей() Экспорт
|
||||
|
@ -1,5 +1,5 @@
|
||||
Описание.Имя("oint-cli")
|
||||
.Версия("1.15.0")
|
||||
.Версия("1.15.1")
|
||||
.Автор("bayselonarrend")
|
||||
.АдресАвтора("bayselonarrend@gmail.com")
|
||||
.Описание("CLI версия Открытого пакета интеграций")
|
||||
|
@ -1,5 +1,5 @@
|
||||
Описание.Имя("oint")
|
||||
.Версия("1.15.0")
|
||||
.Версия("1.15.1")
|
||||
.Автор("bayselonarrend")
|
||||
.АдресАвтора("bayselonarrend@gmail.com")
|
||||
.Описание("Открытый пакет интеграций с популярными API")
|
||||
|
@ -26,7 +26,7 @@
|
||||
<usePurposes>PersonalComputer</usePurposes>
|
||||
<scriptVariant>Russian</scriptVariant>
|
||||
<vendor>Bayselonarrend</vendor>
|
||||
<version>1.15.0</version>
|
||||
<version>1.15.1</version>
|
||||
<detailedInformation>
|
||||
<key>ru</key>
|
||||
<value>Открытый пакет интеграций - набор библиотек для интеграции с некоторыми популярными API для 1C:Enterprise. Он состоит из общих модулей, каждый из которых отвечает за свой API, а также нескольких модулей-инструментов, общих для всех.</value>
|
||||
|
@ -1,12 +0,0 @@
|
||||
-s dir
|
||||
--name oint
|
||||
--license mit
|
||||
--version 1.15.0
|
||||
--architecture all
|
||||
--depends mono-complete
|
||||
--description "OInt CLI - приложение для работы с API различных онлайн-сервисов из командной строки"
|
||||
--url "https://openintegrations.dev/"
|
||||
--maintainer "Anton Titovets <bayselonarrend@gmail.com>"
|
||||
|
||||
|
||||
oint=/usr/bin/oint
|
@ -1,7 +1,7 @@
|
||||
#Использовать "./internal"
|
||||
|
||||
Функция ПолучитьВерсию() Экспорт
|
||||
Возврат "1.15.0";
|
||||
Возврат "1.15.1";
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьСоответствиеКомандМодулей() Экспорт
|
||||
|
@ -14,8 +14,6 @@
|
||||
ЛишниеСимволы = 2;
|
||||
СписокКоманд = Лев(СписокКоманд, СтрДлина(СписокКоманд) - ЛишниеСимволы);
|
||||
|
||||
|
||||
|
||||
Консоль.ЦветТекста = ЦветКонсоли.Зеленый;
|
||||
Консоль.ВывестиСтроку("-----------------------------------------------------");
|
||||
Консоль.ВывестиСтроку("");
|
||||
|
@ -1,5 +1,5 @@
|
||||
Описание.Имя("oint-cli")
|
||||
.Версия("1.15.0")
|
||||
.Версия("1.15.1")
|
||||
.Автор("bayselonarrend")
|
||||
.АдресАвтора("bayselonarrend@gmail.com")
|
||||
.Описание("CLI версия Открытого пакета интеграций")
|
||||
|
Loading…
Reference in New Issue
Block a user