diff --git a/Скрипты/1cicd.sbsl b/Скрипты/1cicd.sbsl index 4fa97a7..8aeb089 100644 --- a/Скрипты/1cicd.sbsl +++ b/Скрипты/1cicd.sbsl @@ -193,7 +193,13 @@ если пересобиратьОсновнуюКонфигурацию знч путьКонфигурацииПлатформы = "%CI_PROJECT_DIR/temp/src_%{настройки.Конфигурация.Имя}" Консоль.Записать("WorkspaceExport: %путьКонфигурацииЕДТ %путьКонфигурацииПлатформы %WP") - WorkspaceExport(путьКонфигурацииЕДТ, путьКонфигурацииПлатформы, WP, ВЕРСИЯ_EDT) + знч безОшибок = WorkspaceExport(путьКонфигурацииЕДТ, путьКонфигурацииПлатформы, WP, Ложь, ВЕРСИЯ_EDT) + если не безОшибок + Консоль.Записать("Удалить каталог workspace: %WP") + Файлы.Удалить(WP) + Консоль.Записать("WorkspaceExport: %путьКонфигурацииЕДТ %путьКонфигурацииПлатформы %WP") + WorkspaceExport(путьКонфигурацииЕДТ, путьКонфигурацииПлатформы, WP, Истина, ВЕРСИЯ_EDT) + ; попытка знч файлПоставки = "%путьКонфигурацииПлатформы/Ext/ParentConfigurations.bin" @@ -239,7 +245,7 @@ ; знч путьРасширенияПлатформы = "%CI_PROJECT_DIR/temp/src_%{репозиторий.Имя}" Консоль.Записать("WorkspaceExport: %путьРасширенияЕДТ %путьРасширенияПлатформы %WP") - WorkspaceExport(путьРасширенияЕДТ, путьРасширенияПлатформы, WP, ВЕРСИЯ_EDT) + WorkspaceExport(путьРасширенияЕДТ, путьРасширенияПлатформы, WP, Истина, ВЕРСИЯ_EDT) Консоль.Записать("LoadExtFromFiles: %путьРасширенияПлатформы %{репозиторий.Проект} %{строкаСоединения} %исполняемыйФайлПлатформы") LoadExtFromFiles(путьРасширенияПлатформы, репозиторий.Проект, строкаСоединения, исполняемыйФайлПлатформы) @@ -417,7 +423,7 @@ если пересобиратьОсновнуюКонфигурацию знч путьКонфигурацииПлатформы = "%CI_PROJECT_DIR/temp/src_%{настройки.Конфигурация.Имя}" Консоль.Записать("WorkspaceExport: %путьКонфигурацииЕДТ %путьКонфигурацииПлатформы %WP") - WorkspaceExport(путьКонфигурацииЕДТ, путьКонфигурацииПлатформы, WP, ВЕРСИЯ_EDT) + WorkspaceExport(путьКонфигурацииЕДТ, путьКонфигурацииПлатформы, WP, Истина, ВЕРСИЯ_EDT) попытка знч файлПоставки = "%путьКонфигурацииПлатформы/Ext/ParentConfigurations.bin" @@ -463,7 +469,7 @@ ; знч путьРасширенияПлатформы = "%CI_PROJECT_DIR/temp/src_%{репозиторий.Имя}" Консоль.Записать("WorkspaceExport: %путьРасширенияЕДТ %путьРасширенияПлатформы %WP") - WorkspaceExport(путьРасширенияЕДТ, путьРасширенияПлатформы, WP, ВЕРСИЯ_EDT) + WorkspaceExport(путьРасширенияЕДТ, путьРасширенияПлатформы, WP, Истина, ВЕРСИЯ_EDT) Консоль.Записать("LoadExtFromFiles: %путьРасширенияПлатформы %{репозиторий.Проект} %строкаСоединения %исполняемыйФайлПлатформы") LoadExtFromFiles(путьРасширенияПлатформы, репозиторий.Проект, строкаСоединения, исполняемыйФайлПлатформы) @@ -534,7 +540,7 @@ знч файлРезультатовВалидации = "%полныйПутьРезультатовТестов/%{настройки.Конфигурация.Имя}.tsv" знч путьКонфигурацииЕДТ = "%CI_PROJECT_DIR/%{настройки.Конфигурация.Имя}/%{настройки.Конфигурация.Проект}" Консоль.Записать("WorkspaceValidate: %файлРезультатовВалидации %путьКонфигурацииЕДТ %WP") - WorkspaceValidate(файлРезультатовВалидации, путьКонфигурацииЕДТ, WP, ВЕРСИЯ_EDT) + WorkspaceValidate(файлРезультатовВалидации, путьКонфигурацииЕДТ, WP, Истина, ВЕРСИЯ_EDT) знч данныеОшибок = ОшибкиВФорматеSonarCube(файлРезультатовВалидации) @@ -2041,8 +2047,8 @@ /* * Пакетный режим EDT */ -метод WorkspaceExport(путьККонфигурацииЕДТ: Строка, путьККонфигурацииПлатформы: Строка, путьКРабочейОбласти: Строка, версияЕДТ: Строка = - "") +метод WorkspaceExport(путьККонфигурацииЕДТ: Строка, путьККонфигурацииПлатформы: Строка, путьКРабочейОбласти: Строка, вызыватьМсключение: Булево, версияЕДТ: Строка = + ""): Булево пер параметрыПроцесса = новый Массив() параметрыПроцесса.Добавить("-l") параметрыПроцесса.Добавить("error") @@ -2060,11 +2066,11 @@ параметрыПроцесса.Добавить("--workspace-location") параметрыПроцесса.Добавить(путьКРабочейОбласти) - ВыполнитьКомандуRingEDT(параметрыПроцесса) + возврат ВыполнитьКомандуRingEDT(параметрыПроцесса, вызыватьМсключение) ; -метод WorkspaceValidate(файлРезультатовВалидации: Строка, путьККонфигурацииЕДТ: Строка, путьКРабочейОбласти: Строка, версияЕДТ: Строка = - "") +метод WorkspaceValidate(файлРезультатовВалидации: Строка, путьККонфигурацииЕДТ: Строка, путьКРабочейОбласти: Строка, вызыватьМсключение: Булево, версияЕДТ: Строка = + ""): Булево пер параметрыПроцесса = новый Массив() параметрыПроцесса.Добавить("-l") параметрыПроцесса.Добавить("error") @@ -2082,10 +2088,10 @@ параметрыПроцесса.Добавить("--file") параметрыПроцесса.Добавить(файлРезультатовВалидации) - ВыполнитьКомандуRingEDT(параметрыПроцесса) + возврат ВыполнитьКомандуRingEDT(параметрыПроцесса, вызыватьМсключение) ; -метод ВыполнитьКомандуRingEDT(параметры: Массив) +метод ВыполнитьКомандуRingEDT(параметры: Массив, вызыватьМсключение: Булево): Булево пер имяКоманды = "" знч версияОС = ИспользуемаяОС() выбор версияОС @@ -2114,7 +2120,7 @@ знч кодВозврата = процесс.ПолучитьКодВозврата() если кодВозврата == 0 - возврат + возврат Истина ; пер текстОшибки = "Код возврата: %кодВозврата" @@ -2123,7 +2129,13 @@ исп ошибкиВыполненияСкрипта = процесс.ПолучитьПотокОшибок() текстОшибки += "\в\н" + ошибкиВыполненияСкрипта.ПрочитатьКакТекст(КодировкаПотокаВыводаПлатформы()) - выбросить новый ИсключениеНедопустимоеСостояние(текстОшибки) + + если вызыватьМсключение + выбросить новый ИсключениеНедопустимоеСостояние(текстОшибки) + ; + + Консоль.Записать(текстОшибки) + возврат Ложь ; метод ЗаписатьОшибкиВФорматSonarCube(файлSonarQube: Строка, данныеОшибок: SonarqubeGenericFormat)