You've already forked devscripts
mirror of
https://github.com/DoublesunRUS/devscripts.git
synced 2026-06-11 22:46:51 +02:00
Интеграция / Развертывание
This commit is contained in:
@@ -4,10 +4,15 @@
|
||||
#### ОбновлениеПлатформ.sbsl
|
||||
В РАЗРАБОТКЕ.<br>
|
||||
Скрипт, который позволяет обновить платформы, установленные на компьютере.<br>
|
||||
Скрипт проверяет список последний версий платформы на сайте, смотрит список баз компьютера, список установленных платформ. После чего определяет, какие версии платформ нужно установить, а какие - удалить.
|
||||
Скрипт проверяет список последний версий платформы на сайте, смотрит список баз компьютера, список установленных платформ. После чего определяет, какие версии платформ нужно установить, а какие - удалить.<br>
|
||||
- метод Скрипт() - запрашивает имя и пароль пользователя через консоль
|
||||
- метод ОбновитьПлатформы() - использует имя пользователя и пароль из параметров запуска
|
||||
|
||||
#### ИнтеграцияРазвертывание.sbsl.sbsl
|
||||
В РАЗРАБОТКЕ.<br>
|
||||
Скрипт для CI/CD.<br>
|
||||
- метод СобратьИзИсходниковФайлКонфигурации() - преобразует указанную версию конфигурации EDT в CF файл выбранной версией платформы
|
||||
|
||||
### Библиотеки
|
||||
#### ЗапускСкриптов.sbsl
|
||||
Скрипт содержит методы, позволяющие вызывать из своего скрипта другие скрипты.<br>
|
||||
|
||||
@@ -19,6 +19,13 @@
|
||||
структура ОписаниеУправляющегоФайла
|
||||
знч путьКРабочейОбласти: Строка
|
||||
знч путьКФайламКонфигурации: Строка
|
||||
знч путьКИБ: Строка
|
||||
|
||||
пер конфигурацияЕДТЗагружена: Булево
|
||||
пер конфигурация1СВыгружена: Булево
|
||||
пер ИБСоздана: Булево
|
||||
|
||||
конструктор(путьКРабочейОбласти, путьКФайламКонфигурации, путьКИБ)
|
||||
;
|
||||
|
||||
|
||||
@@ -27,19 +34,26 @@
|
||||
|
||||
если ОТЛАДКА
|
||||
Консоль.Записать("Управляющий файл: " + имяУправляющегоФайла)
|
||||
Консоль.Записать("")
|
||||
;
|
||||
|
||||
знч временныйПутьКРабочейОбласти = "/var/folders/fh/dr6rmj6n4rz5wzy30n7047380000gn/T/cicd_ws1889244632607481299"
|
||||
знч временныйПутьКФайламКонфигурации =
|
||||
"/var/folders/fh/dr6rmj6n4rz5wzy30n7047380000gn/T/cicd_1c_xml2547513256186380452"
|
||||
// знч временныйПутьКРабочейОбласти = Файлы.СоздатьВременныйКаталог("cicd_ws", Ложь).Путь
|
||||
// знч временныйПутьКФайламКонфигурации = Файлы.СоздатьВременныйКаталог("cicd_1c_xml", Ложь).Путь
|
||||
знч временныйПутьКРабочейОбласти = Файлы.СоздатьВременныйКаталог("cicd_ws", Ложь).Путь
|
||||
знч временныйПутьКФайламКонфигурации = Файлы.СоздатьВременныйКаталог("cicd_1c_xml", Ложь).Путь
|
||||
знч временныйПутьКИБ = Файлы.СоздатьВременныйКаталог("cicd_1cd", Ложь).Путь
|
||||
если ОТЛАДКА
|
||||
Консоль.Записать("Рабочая область: " + временныйПутьКРабочейОбласти)
|
||||
Консоль.Записать("Файлы конфигурации: " + временныйПутьКФайламКонфигурации)
|
||||
Консоль.Записать("ИБ: " + временныйПутьКИБ)
|
||||
;
|
||||
|
||||
знч содержимоеФайла = новый ОписаниеУправляющегоФайла(временныйПутьКРабочейОбласти, временныйПутьКФайламКонфигурации)
|
||||
знч содержимоеФайла = новый ОписаниеУправляющегоФайла(временныйПутьКРабочейОбласти, временныйПутьКФайламКонфигурации,
|
||||
временныйПутьКИБ)
|
||||
|
||||
содержимоеФайла.конфигурацияЕДТЗагружена = Истина
|
||||
содержимоеФайла.конфигурация1СВыгружена = не Файлы.КаталогПустой(временныйПутьКРабочейОбласти) и не Файлы.КаталогПустой(
|
||||
временныйПутьКФайламКонфигурации)
|
||||
содержимоеФайла.ИБСоздана = не Файлы.КаталогПустой(временныйПутьКИБ)
|
||||
|
||||
ЗаписатьУправляющийФайл(содержимоеФайла, имяУправляющегоФайла)
|
||||
|
||||
если ОТЛАДКА
|
||||
@@ -52,6 +66,10 @@
|
||||
метод ПрочитатьУправляющийФайл(имяУправляющегоФайла: Строка): ОписаниеУправляющегоФайла
|
||||
пер путьКРабочейОбласти: Строка
|
||||
пер путьКФайламКонфигурации: Строка
|
||||
пер путьКИБ: Строка
|
||||
пер конфигурацияЕДТЗагружена: Булево
|
||||
пер конфигурация1СВыгружена: Булево
|
||||
пер ИБСоздана: Булево
|
||||
|
||||
знч управляющийФайл = новый Файл(имяУправляющегоФайла)
|
||||
знч потокЧтения = управляющийФайл.ОткрытьПотокЧтения()
|
||||
@@ -70,13 +88,29 @@
|
||||
чтение.Следующий()
|
||||
путьКФайламКонфигурации = чтение.Значение
|
||||
|
||||
когда "ПутьКИБ"
|
||||
чтение.Следующий()
|
||||
путьКИБ = чтение.Значение
|
||||
|
||||
когда "КонфигурацияЕДТЗагружена"
|
||||
чтение.Следующий()
|
||||
конфигурацияЕДТЗагружена = чтение.ПрочитатьСодержимоеКакБулево()
|
||||
|
||||
когда "Конфигурация1СВыгружена"
|
||||
чтение.Следующий()
|
||||
конфигурация1СВыгружена = чтение.ПрочитатьСодержимоеКакБулево()
|
||||
|
||||
когда "ИБСоздана"
|
||||
чтение.Следующий()
|
||||
ИБСоздана = чтение.ПрочитатьСодержимоеКакБулево()
|
||||
|
||||
иначе
|
||||
;
|
||||
;
|
||||
|
||||
потокЧтения.Закрыть()
|
||||
|
||||
знч содержимоеФайла = новый ОписаниеУправляющегоФайла(путьКРабочейОбласти, путьКФайламКонфигурации)
|
||||
знч содержимоеФайла = новый ОписаниеУправляющегоФайла(путьКРабочейОбласти, путьКФайламКонфигурации, путьКИБ)
|
||||
|
||||
возврат содержимоеФайла
|
||||
;
|
||||
@@ -87,8 +121,15 @@
|
||||
знч запись = новый ЗаписьJson(потокЗаписи)
|
||||
|
||||
запись.ЗаписатьНачалоОбъекта()
|
||||
|
||||
запись.Записать("ПутьКРабочейОбласти", содержимоеФайла.путьКРабочейОбласти)
|
||||
запись.Записать("ПутьКФайламКонфигурации", содержимоеФайла.путьКФайламКонфигурации)
|
||||
запись.Записать("ПутьКИБ", содержимоеФайла.путьКИБ)
|
||||
|
||||
запись.Записать("КонфигурацияЕДТЗагружена", содержимоеФайла.конфигурацияЕДТЗагружена)
|
||||
запись.Записать("Конфигурация1СВыгружена", содержимоеФайла.конфигурация1СВыгружена)
|
||||
запись.Записать("ИБСоздана", содержимоеФайла.ИБСоздана)
|
||||
|
||||
запись.ЗаписатьКонецОбъекта()
|
||||
|
||||
потокЗаписи.Закрыть()
|
||||
@@ -97,67 +138,77 @@
|
||||
метод Завершить(имяУправляющегоФайла: Строка)
|
||||
знч содержимоеФайла = ПрочитатьУправляющийФайл(имяУправляющегоФайла)
|
||||
|
||||
// Файлы.Удалить(содержимоеФайла.путьКРабочейОбласти)
|
||||
// Файлы.Удалить(содержимоеФайла.путьКФайламКонфигурации)
|
||||
Файлы.Удалить(содержимоеФайла.путьКРабочейОбласти)
|
||||
Файлы.Удалить(содержимоеФайла.путьКФайламКонфигурации)
|
||||
Файлы.Удалить(содержимоеФайла.путьКИБ)
|
||||
|
||||
Файлы.Удалить(имяУправляющегоФайла)
|
||||
;
|
||||
|
||||
метод СкачатьКоммитИзРепозитория()
|
||||
;
|
||||
|
||||
метод СобратьИзИсходниковФайлКонфигурации(путьККонфигурацииЕДТ: Строка, путьКФайлуCF: Строка, версияПлатформы: Строка)
|
||||
пер кодВозврата: Число
|
||||
|
||||
Ring_EDT_PlatformVersions()
|
||||
|
||||
если Истина
|
||||
возврат
|
||||
;
|
||||
|
||||
знч имяУправляющегоФайла = Инициализировать()
|
||||
|
||||
знч содержимоеФайла = ПрочитатьУправляющийФайл(имяУправляющегоФайла)
|
||||
|
||||
метод ПутьКПлатформе(версияПлатформы: Строка): Строка
|
||||
знч максимальныеПлатформы = МаксимальныеПлатформы()
|
||||
|
||||
знч путьКПлатформе = максимальныеПлатформы.Получить(версияПлатформы)
|
||||
пер путьКПлатформе = максимальныеПлатформы.Получить(версияПлатформы)
|
||||
если путьКПлатформе == Неопределено
|
||||
знч текстОшибки = Строки.Шаблон("Не найдена установленная платформа $0", версияПлатформы)
|
||||
выбросить новый ИсключениеНедопустимоеСостояние(текстОшибки)
|
||||
;
|
||||
путьКПлатформе = путьКПлатформе + Файлы.СимволРазделителя + "bin" + Файлы.СимволРазделителя + "1cv8"
|
||||
|
||||
знч временныйПутьКИБ = Файлы.СоздатьВременныйКаталог("cicd_1cd", Ложь).Путь
|
||||
возврат путьКПлатформе
|
||||
;
|
||||
|
||||
Консоль.Записать("Начало экспорта")
|
||||
кодВозврата = Ring_EDT_Export(путьККонфигурацииЕДТ, содержимоеФайла.путьКФайламКонфигурации, содержимоеФайла
|
||||
.путьКРабочейОбласти)
|
||||
если кодВозврата != 0
|
||||
Завершить(имяУправляющегоФайла)
|
||||
возврат
|
||||
метод СобратьИзИсходниковФайлКонфигурации(путьККонфигурацииЕДТ: Строка, путьКФайлуCF: Строка, версияПлатформы: Строка)
|
||||
пер кодВозврата: Число
|
||||
|
||||
знч имяУправляющегоФайла = Инициализировать()
|
||||
знч содержимоеФайла = ПрочитатьУправляющийФайл(имяУправляющегоФайла)
|
||||
|
||||
знч путьКПлатформе = ПутьКПлатформе(версияПлатформы)
|
||||
|
||||
если не содержимоеФайла.конфигурация1СВыгружена
|
||||
Консоль.Записать("Выгрузка конфигурации ЕДТ в формат 1С")
|
||||
кодВозврата = Ring_EDT_Export(путьККонфигурацииЕДТ, содержимоеФайла.путьКФайламКонфигурации, содержимоеФайла.путьКРабочейОбласти)
|
||||
содержимоеФайла.конфигурация1СВыгружена = кодВозврата == 0
|
||||
ЗаписатьУправляющийФайл(содержимоеФайла, имяУправляющегоФайла)
|
||||
если кодВозврата != 0
|
||||
Завершить(имяУправляющегоФайла)
|
||||
возврат
|
||||
;
|
||||
;
|
||||
|
||||
Консоль.Записать("Создание пустой ИБ")
|
||||
кодВозврата = E1c_CreateInfobase(путьКПлатформе, временныйПутьКИБ)
|
||||
если кодВозврата != 0
|
||||
Завершить(имяУправляющегоФайла)
|
||||
возврат
|
||||
если не содержимоеФайла.ИБСоздана
|
||||
Консоль.Записать("Создание пустой ИБ")
|
||||
кодВозврата = E1c_CreateInfobase(путьКПлатформе, содержимоеФайла.путьКИБ)
|
||||
если кодВозврата != 0
|
||||
содержимоеФайла.ИБСоздана = Ложь
|
||||
ЗаписатьУправляющийФайл(содержимоеФайла, имяУправляющегоФайла)
|
||||
Завершить(имяУправляющегоФайла)
|
||||
возврат
|
||||
;
|
||||
|
||||
Консоль.Записать("Загрузка конфигурации из XML в ИБ")
|
||||
кодВозврата = E1c_LoadConfigFromFiles(путьКПлатформе, содержимоеФайла.путьКИБ, содержимоеФайла.путьКФайламКонфигурации)
|
||||
содержимоеФайла.ИБСоздана = кодВозврата == 0
|
||||
ЗаписатьУправляющийФайл(содержимоеФайла, имяУправляющегоФайла)
|
||||
если кодВозврата != 0
|
||||
Завершить(имяУправляющегоФайла)
|
||||
возврат
|
||||
;
|
||||
;
|
||||
|
||||
Консоль.Записать("Загрузить Конфигурацию XML в ИБ")
|
||||
кодВозврата = E1c_LoadConfigFromFiles(путьКПлатформе, временныйПутьКИБ, содержимоеФайла.путьКФайламКонфигурации)
|
||||
если кодВозврата != 0
|
||||
Завершить(имяУправляющегоФайла)
|
||||
возврат
|
||||
;
|
||||
|
||||
Консоль.Записать("Сохранить CF")
|
||||
кодВозврата = E1c_DumpCfg(путьКПлатформе, временныйПутьКИБ, путьКФайлуCF)
|
||||
Консоль.Записать("Сохранение CF")
|
||||
кодВозврата = E1c_DumpCfg(путьКПлатформе, содержимоеФайла.путьКИБ, путьКФайлуCF)
|
||||
если кодВозврата != 0
|
||||
Завершить(имяУправляющегоФайла)
|
||||
возврат
|
||||
;
|
||||
|
||||
Завершить(имяУправляющегоФайла)
|
||||
Консоль.Записать("CF файл собран")
|
||||
;
|
||||
|
||||
метод СобратьИзИсходниковФайлРасширения()
|
||||
@@ -178,6 +229,8 @@
|
||||
;
|
||||
|
||||
параметрыПроцесса.Добавить("ring")
|
||||
параметрыПроцесса.Добавить("-l")
|
||||
параметрыПроцесса.Добавить("error")
|
||||
если версияЕДТ.Пусто()
|
||||
параметрыПроцесса.Добавить("edt")
|
||||
иначе
|
||||
@@ -234,7 +287,8 @@
|
||||
метод E1c_LoadConfigFromFiles(имяФайлаПлатформы: Строка, путьКИБ: Строка, путьККонфигурацииПлатформы: Строка): Число
|
||||
пер параметрыПроцесса = новый Массив()
|
||||
параметрыПроцесса.Добавить("DESIGNER")
|
||||
параметрыПроцесса.Добавить("File=" + путьКИБ)
|
||||
параметрыПроцесса.Добавить("/F")
|
||||
параметрыПроцесса.Добавить(путьКИБ)
|
||||
параметрыПроцесса.Добавить("/LoadConfigFromFiles")
|
||||
параметрыПроцесса.Добавить(путьККонфигурацииПлатформы)
|
||||
параметрыПроцесса.Добавить("/UpdateDBCfg")
|
||||
@@ -245,7 +299,8 @@
|
||||
метод E1c_DumpCfg(имяФайлаПлатформы: Строка, путьКИБ: Строка, путьКФайлуCF: Строка): Число
|
||||
пер параметрыПроцесса = новый Массив()
|
||||
параметрыПроцесса.Добавить("DESIGNER")
|
||||
параметрыПроцесса.Добавить("File=" + путьКИБ)
|
||||
параметрыПроцесса.Добавить("/F")
|
||||
параметрыПроцесса.Добавить(путьКИБ)
|
||||
параметрыПроцесса.Добавить("/DumpCfg")
|
||||
параметрыПроцесса.Добавить(путьКФайлуCF)
|
||||
|
||||
@@ -255,7 +310,8 @@
|
||||
метод E1c_CreateDistributionFiles(имяФайлаПлатформы: Строка, путьКИБ: Строка, путьКФайлуCF: Строка): Число
|
||||
пер параметрыПроцесса = новый Массив()
|
||||
параметрыПроцесса.Добавить("DESIGNER")
|
||||
параметрыПроцесса.Добавить("File=" + путьКИБ)
|
||||
параметрыПроцесса.Добавить("/F")
|
||||
параметрыПроцесса.Добавить(путьКИБ)
|
||||
параметрыПроцесса.Добавить("/CreateDistributionFiles")
|
||||
параметрыПроцесса.Добавить("-cffile")
|
||||
параметрыПроцесса.Добавить(путьКФайлуCF)
|
||||
|
||||
Reference in New Issue
Block a user