You've already forked devscripts
mirror of
https://github.com/DoublesunRUS/devscripts.git
synced 2025-07-17 01:12:27 +02:00
Интеграция / Развертывание
This commit is contained in:
@ -7,9 +7,6 @@ stages:
|
||||
- report
|
||||
- release
|
||||
|
||||
variables:
|
||||
WP: '${CI_PROJECT_DIR}/temp/wp'
|
||||
|
||||
buildMaster:
|
||||
stage: build
|
||||
tags:
|
||||
@ -23,10 +20,6 @@ buildMaster:
|
||||
paths:
|
||||
- build/
|
||||
- ci/
|
||||
cache:
|
||||
key: ${CI_COMMIT_REF_SLUG}
|
||||
paths:
|
||||
- $env:WP
|
||||
|
||||
buildMergeRequest:
|
||||
stage: build
|
||||
@ -55,10 +48,6 @@ buildRelease:
|
||||
paths:
|
||||
- build/
|
||||
- ci/
|
||||
cache:
|
||||
key: ${CI_COMMIT_REF_SLUG}
|
||||
paths:
|
||||
- $env:WP
|
||||
|
||||
testCore:
|
||||
stage: test
|
||||
|
@ -64,8 +64,7 @@
|
||||
;
|
||||
|
||||
метод СобратьРелизДляВыпуска()
|
||||
знч WP = СредаИсполнения.ПолучитьПеременную("WP")
|
||||
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_JOB_ID = СредаИсполнения.ПолучитьПеременную("CI_JOB_ID")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
@ -122,8 +121,8 @@
|
||||
знч адресРепозиторияКонфигурации = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{настройки
|
||||
.Конфигурация
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %{настройки.Конфигурация.Ветка}")
|
||||
Git_Clone(адресРепозиторияКонфигурации, настройки.Конфигурация.Ветка)
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %CI_COMMIT_BRANCH")
|
||||
Git_Clone(адресРепозиторияКонфигурации, CI_COMMIT_BRANCH)
|
||||
|
||||
знч путьКонфигурацииЕДТ = "%CI_PROJECT_DIR/%{настройки.Конфигурация.Имя}/%{настройки.Конфигурация.Проект}"
|
||||
Консоль.Записать("ИсполняемыйФайлПлатформы: %путьКонфигурацииЕДТ")
|
||||
@ -200,11 +199,20 @@
|
||||
возврат
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПересборки
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторий
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %CI_COMMIT_BRANCH")
|
||||
Git_Clone(адресРепозитория, CI_COMMIT_BRANCH)
|
||||
;
|
||||
|
||||
Консоль.Записать("Дата нового релиза = %датаНовогоРелиза")
|
||||
пер файлДатаНовогоРелиза = Файлы.Создать("%ИМЯ_КАТАЛОГА_СЛУЖЕБНОЙ_СБОРКИ/new_release_date.txt")
|
||||
исп потокЗаписиДатаНовогоРелиза = файлДатаНовогоРелиза.ОткрытьПотокЗаписи()
|
||||
потокЗаписиДатаНовогоРелиза.Записать(датаНовогоРелиза.Форматировать("гггг-ММ-дд'T'ЧЧ:мм:сс"))
|
||||
|
||||
знч WP = "%CI_PROJECT_DIR/temp/wp"
|
||||
|
||||
знч файлКонфигурации = "%полныйПутьПрикладнойСборки/1cv8.cf"
|
||||
если пересобиратьОсновнуюКонфигурацию
|
||||
знч путьКонфигурацииПлатформы = "%CI_PROJECT_DIR/temp/src_%{настройки.Конфигурация.Имя}"
|
||||
@ -249,16 +257,7 @@
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПересборки
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторий
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %{репозиторий.Ветка}")
|
||||
Git_Clone(адресРепозитория, репозиторий.Ветка)
|
||||
|
||||
пер путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{репозиторий.Проект}"
|
||||
если не (новый Файл(путьРасширенияЕДТ)).Существует()
|
||||
путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{настройки.Конфигурация.Проект}.%{репозиторий
|
||||
.Проект}"
|
||||
;
|
||||
знч путьРасширенияПлатформы = "%CI_PROJECT_DIR/temp/src_%{репозиторий.Имя}"
|
||||
Консоль.Записать("WorkspaceExport: %путьРасширенияЕДТ %путьРасширенияПлатформы %WP")
|
||||
WorkspaceExport(путьРасширенияЕДТ, путьРасширенияПлатформы, WP, Истина, ВЕРСИЯ_EDT)
|
||||
@ -295,8 +294,6 @@
|
||||
;
|
||||
|
||||
метод СобратьРелизДляАнализа()
|
||||
знч WP = СредаИсполнения.ПолучитьПеременную("WP")
|
||||
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_COMMIT_TIMESTAMP = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_TIMESTAMP")
|
||||
знч CI_JOB_ID = СредаИсполнения.ПолучитьПеременную("CI_JOB_ID")
|
||||
@ -377,8 +374,8 @@
|
||||
знч адресРепозиторияКонфигурации = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{настройкиСборки
|
||||
.Конфигурация
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %{настройкиСборки.Конфигурация.Ветка}")
|
||||
Git_Clone(адресРепозиторияКонфигурации, настройкиСборки.Конфигурация.Ветка)
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %CI_COMMIT_BRANCH")
|
||||
Git_Clone(адресРепозиторияКонфигурации, CI_COMMIT_BRANCH)
|
||||
;
|
||||
|
||||
Консоль.Записать("ИсполняемыйФайлПлатформы: %путьКонфигурацииЕДТ")
|
||||
@ -451,6 +448,22 @@
|
||||
;
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПересборки
|
||||
пер путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{репозиторий.Проект}"
|
||||
|
||||
если репозиторий.Имя == имяТекущегоПроекта
|
||||
Файлы.СоздатьКаталог(путьРасширенияЕДТ)
|
||||
Файлы.Переместить("%CI_PROJECT_DIR/%{репозиторий.Проект}", путьРасширенияЕДТ)
|
||||
иначе
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторий
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %CI_COMMIT_BRANCH")
|
||||
Git_Clone(адресРепозитория, CI_COMMIT_BRANCH)
|
||||
;
|
||||
;
|
||||
|
||||
знч WP = "%CI_PROJECT_DIR/temp/wp"
|
||||
|
||||
знч файлКонфигурации = "%полныйПутьПрикладнойСборки/1cv8.cf"
|
||||
если пересобиратьОсновнуюКонфигурацию
|
||||
знч путьКонфигурацииПлатформы = "%CI_PROJECT_DIR/temp/src_%{настройкиСборки.Конфигурация.Имя}"
|
||||
@ -489,16 +502,8 @@
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПересборки
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторий
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %{репозиторий.Ветка}")
|
||||
Git_Clone(адресРепозитория, репозиторий.Ветка)
|
||||
|
||||
пер путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{репозиторий.Проект}"
|
||||
если не (новый Файл(путьРасширенияЕДТ)).Существует()
|
||||
путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{настройкиСборки.Конфигурация.Проект}.%{репозиторий
|
||||
.Проект}"
|
||||
;
|
||||
|
||||
знч путьРасширенияПлатформы = "%CI_PROJECT_DIR/temp/src_%{репозиторий.Имя}"
|
||||
Консоль.Записать("WorkspaceExport: %путьРасширенияЕДТ %путьРасширенияПлатформы %WP")
|
||||
WorkspaceExport(путьРасширенияЕДТ, путьРасширенияПлатформы, WP, Истина, ВЕРСИЯ_EDT)
|
||||
@ -525,8 +530,6 @@
|
||||
;
|
||||
|
||||
метод СобратьРелизДляСлияния()
|
||||
знч WP = СредаИсполнения.ПолучитьПеременную("WP")
|
||||
|
||||
знч CI_JOB_ID = СредаИсполнения.ПолучитьПеременную("CI_JOB_ID")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
@ -567,6 +570,8 @@
|
||||
выбросить новый ИсключениеНедопустимоеСостояние(ошибкиТокенов)
|
||||
;
|
||||
|
||||
знч запросНаСлияние = ПараметрыЗапросаНаСлияние()
|
||||
|
||||
знч полныйПутьПрикладнойСборки = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_ПРИКЛАДНОЙ_СБОРКИ"
|
||||
знч полныйПутьТестовойСборки = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_ТЕСТОВОЙ_СБОРКИ"
|
||||
|
||||
@ -590,8 +595,8 @@
|
||||
знч адресРепозиторияКонфигурации = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{настройкиСборки
|
||||
.Конфигурация
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %{настройкиСборки.Конфигурация.Ветка}")
|
||||
Git_Clone(адресРепозиторияКонфигурации, настройкиСборки.Конфигурация.Ветка)
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %{запросНаСлияние.веткаПроекта}")
|
||||
Git_Clone(адресРепозиторияКонфигурации, запросНаСлияние.веткаПроекта)
|
||||
;
|
||||
|
||||
Консоль.Записать("ИсполняемыйФайлПлатформы: %путьКонфигурацииЕДТ")
|
||||
@ -606,8 +611,6 @@
|
||||
знч датаПоследнегоРелиза = Releases_LastDate(имяРепозиторияРелизов, RELEASES_TOKEN, CI_SERVER_HOST)
|
||||
Консоль.Записать("Дата последнего релиза = %датаПоследнегоРелиза")
|
||||
|
||||
знч запросНаСлияние = ПараметрыЗапросаНаСлияние()
|
||||
|
||||
пер пересобиратьОсновнуюКонфигурацию = Ложь
|
||||
пер репозиторииДляПересборки = новый Массив()
|
||||
пер путиСборки = новый Соответствие()
|
||||
@ -672,6 +675,22 @@
|
||||
возврат
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПересборки
|
||||
пер путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{репозиторий.Проект}"
|
||||
|
||||
если репозиторий.Имя == имяТекущегоПроекта
|
||||
Файлы.СоздатьКаталог(путьРасширенияЕДТ)
|
||||
Файлы.Переместить("%CI_PROJECT_DIR/%{репозиторий.Проект}", путьРасширенияЕДТ)
|
||||
иначе
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторий
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %{запросНаСлияние.веткаПроекта}")
|
||||
Git_Clone(адресРепозитория, запросНаСлияние.веткаПроекта)
|
||||
;
|
||||
;
|
||||
|
||||
знч WP = "%CI_PROJECT_DIR/temp/wp"
|
||||
|
||||
знч файлКонфигурации = "%полныйПутьПрикладнойСборки/1cv8.cf"
|
||||
если пересобиратьОсновнуюКонфигурацию
|
||||
знч путьКонфигурацииПлатформы = "%CI_PROJECT_DIR/temp/src_%{настройкиСборки.Конфигурация.Имя}"
|
||||
@ -710,16 +729,8 @@
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПересборки
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторий
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %{репозиторий.Ветка}")
|
||||
Git_Clone(адресРепозитория, репозиторий.Ветка)
|
||||
|
||||
пер путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{репозиторий.Проект}"
|
||||
если не (новый Файл(путьРасширенияЕДТ)).Существует()
|
||||
путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{настройкиСборки.Конфигурация.Проект}.%{репозиторий
|
||||
.Проект}"
|
||||
;
|
||||
|
||||
знч путьРасширенияПлатформы = "%CI_PROJECT_DIR/temp/src_%{репозиторий.Имя}"
|
||||
Консоль.Записать("WorkspaceExport: %путьРасширенияЕДТ %путьРасширенияПлатформы %WP")
|
||||
WorkspaceExport(путьРасширенияЕДТ, путьРасширенияПлатформы, WP, Истина, ВЕРСИЯ_EDT)
|
||||
@ -756,8 +767,6 @@
|
||||
;
|
||||
|
||||
метод ОпубликоватьQualityCode()
|
||||
знч WP = СредаИсполнения.ПолучитьПеременную("WP")
|
||||
|
||||
знч CI_COMMIT_SHORT_SHA = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_SHORT_SHA")
|
||||
знч CI_JOB_ID = СредаИсполнения.ПолучитьПеременную("CI_JOB_ID")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
@ -774,18 +783,33 @@
|
||||
Консоль.Записать("Создать каталог: %полныйПутьРезультатовТестов/codequality")
|
||||
Файлы.СоздатьКаталог("%полныйПутьРезультатовТестов/codequality")
|
||||
|
||||
знч файлРезультатовВалидации = "%полныйПутьРезультатовТестов/%{настройкиСборки.Конфигурация.Имя}.tsv"
|
||||
знч имяТекущегоПроекта = CI_PROJECT_PATH.Заменить("%CI_PROJECT_NAMESPACE/", "")
|
||||
|
||||
знч ошибкиEDT = ОшибкиEDT(файлРезультатовВалидации)
|
||||
пер репозиторииДляПроверки = новый Массив()
|
||||
|
||||
знч файлCodeQuality = "%полныйПутьРезультатовТестов/codequality/%{настройкиСборки.Конфигурация.Имя}.json"
|
||||
Консоль.Записать("ЗаписатьОшибкиВФорматCodeQuality: %файлCodeQuality %файлРезультатовВалидации")
|
||||
ЗаписатьОшибкиВФорматCodeQuality(файлCodeQuality, ошибкиEDT)
|
||||
если настройкиСборки.Конфигурация.Имя == имяТекущегоПроекта
|
||||
репозиторииДляПроверки.Добавить(настройкиСборки.Конфигурация)
|
||||
;
|
||||
|
||||
для репозиторийРасширения из настройкиСборки.ПрикладныеРасширения
|
||||
если репозиторийРасширения.Имя == имяТекущегоПроекта
|
||||
репозиторииДляПроверки.Добавить(репозиторийРасширения)
|
||||
;
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПроверки
|
||||
знч файлРезультатовВалидации = "%полныйПутьРезультатовТестов/%{репозиторий.Имя}.tsv"
|
||||
|
||||
знч ошибкиEDT = ОшибкиEDT(файлРезультатовВалидации)
|
||||
|
||||
знч файлCodeQuality = "%полныйПутьРезультатовТестов/codequality/%{репозиторий.Имя}.json"
|
||||
Консоль.Записать("ЗаписатьОшибкиВФорматCodeQuality: %файлCodeQuality %файлРезультатовВалидации")
|
||||
ЗаписатьОшибкиВФорматCodeQuality(файлCodeQuality, ошибкиEDT)
|
||||
;
|
||||
;
|
||||
|
||||
метод ПротестироватьКод()
|
||||
знч WP = СредаИсполнения.ПолучитьПеременную("WP")
|
||||
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_JOB_ID = СредаИсполнения.ПолучитьПеременную("CI_JOB_ID")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
@ -812,6 +836,8 @@
|
||||
выбросить новый ИсключениеНедопустимоеСостояние(ошибкиТокенов)
|
||||
;
|
||||
|
||||
знч запросНаСлияние = ПараметрыЗапросаНаСлияние()
|
||||
|
||||
знч полныйПутьРезультатовТестов = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_РЕЗУЛЬТАТОВ_ТЕСТОВ"
|
||||
|
||||
Консоль.Записать("Создать каталог: %полныйПутьРезультатовТестов")
|
||||
@ -819,9 +845,20 @@
|
||||
Консоль.Записать("Создать каталог: %полныйПутьРезультатовТестов/junit")
|
||||
Файлы.СоздатьКаталог("%полныйПутьРезультатовТестов/junit")
|
||||
|
||||
знч путьКонфигурацииЕДТ = "%CI_PROJECT_DIR/%{настройкиСборки.Конфигурация.Имя}/%{настройкиСборки.Конфигурация.Проект}"
|
||||
|
||||
знч имяТекущегоПроекта = CI_PROJECT_PATH.Заменить("%CI_PROJECT_NAMESPACE/", "")
|
||||
|
||||
пер имяВетки = CI_COMMIT_BRANCH
|
||||
если запросНаСлияние != Неопределено
|
||||
имяВетки = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
|
||||
пер репозиторииДляПроверки = новый Массив()
|
||||
|
||||
если настройкиСборки.Конфигурация.Имя == имяТекущегоПроекта
|
||||
репозиторииДляПроверки.Добавить(настройкиСборки.Конфигурация)
|
||||
;
|
||||
|
||||
знч путьКонфигурацииЕДТ = "%CI_PROJECT_DIR/%{настройкиСборки.Конфигурация.Имя}/%{настройкиСборки.Конфигурация.Проект}"
|
||||
если настройкиСборки.Конфигурация.Имя == имяТекущегоПроекта
|
||||
Файлы.СоздатьКаталог(путьКонфигурацииЕДТ)
|
||||
Файлы.Переместить("%CI_PROJECT_DIR/%{настройкиСборки.Конфигурация.Проект}", путьКонфигурацииЕДТ)
|
||||
@ -829,14 +866,37 @@
|
||||
знч адресРепозиторияКонфигурации = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{настройкиСборки
|
||||
.Конфигурация
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %{настройкиСборки.Конфигурация.Ветка}")
|
||||
Git_Clone(адресРепозиторияКонфигурации, настройкиСборки.Конфигурация.Ветка)
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %имяВетки")
|
||||
Git_Clone(адресРепозиторияКонфигурации, имяВетки)
|
||||
;
|
||||
|
||||
знч файлРезультатовВалидации = "%полныйПутьРезультатовТестов/%{настройкиСборки.Конфигурация.Имя}.tsv"
|
||||
Консоль.Записать("WorkspaceValidate: %файлРезультатовВалидации %путьКонфигурацииЕДТ %WP")
|
||||
WorkspaceValidate(файлРезультатовВалидации, путьКонфигурацииЕДТ, WP, Истина, ВЕРСИЯ_EDT)
|
||||
для репозиторийРасширения из настройкиСборки.ПрикладныеРасширения
|
||||
если репозиторийРасширения.Имя == имяТекущегоПроекта
|
||||
репозиторииДляПроверки.Добавить(репозиторийРасширения)
|
||||
;
|
||||
|
||||
знч путьРасширенияЕДТ = "%CI_PROJECT_DIR/%{репозиторийРасширения.Имя}/%{репозиторийРасширения.Проект}"
|
||||
|
||||
если репозиторийРасширения.Имя == имяТекущегоПроекта
|
||||
Файлы.СоздатьКаталог(путьРасширенияЕДТ)
|
||||
Файлы.Переместить("%CI_PROJECT_DIR/%{репозиторийРасширения.Проект}", путьРасширенияЕДТ)
|
||||
иначе
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторийРасширения
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %имяВетки")
|
||||
Git_Clone(адресРепозитория, имяВетки)
|
||||
;
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПроверки
|
||||
знч путьРепозиторияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{репозиторий.Проект}"
|
||||
|
||||
знч файлРезультатовВалидации = "%полныйПутьРезультатовТестов/%{репозиторий.Имя}.tsv"
|
||||
знч WP = "%CI_PROJECT_DIR/temp/wp"
|
||||
Консоль.Записать("WorkspaceValidate: %файлРезультатовВалидации %путьРепозиторияЕДТ %WP")
|
||||
WorkspaceValidate(файлРезультатовВалидации, путьРепозиторияЕДТ, WP, Истина, ВЕРСИЯ_EDT)
|
||||
;
|
||||
|
||||
пер списокФайловСсылок = новый Массив()
|
||||
|
||||
знч имяФайлаАссетов = "%ИМЯ_КАТАЛОГА_СЛУЖЕБНОЙ_СБОРКИ/assets_testCore.json"
|
||||
@ -846,6 +906,7 @@
|
||||
;
|
||||
|
||||
метод ПротестироватьИнтерфейс()
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
знч CI_PROJECT_NAMESPACE = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_NAMESPACE")
|
||||
@ -876,10 +937,17 @@
|
||||
;
|
||||
|
||||
знч настройкиСборки = ПрочитатьНастройкиСборки("%CI_PROJECT_DIR")
|
||||
знч запросНаСлияние = ПараметрыЗапросаНаСлияние()
|
||||
|
||||
знч путьКонфигурацииЕДТ = "%CI_PROJECT_DIR/%{настройкиСборки.Конфигурация.Имя}/%{настройкиСборки.Конфигурация.Проект}"
|
||||
|
||||
знч имяТекущегоПроекта = CI_PROJECT_PATH.Заменить("%CI_PROJECT_NAMESPACE/", "")
|
||||
|
||||
пер имяВетки = CI_COMMIT_BRANCH
|
||||
если запросНаСлияние != Неопределено
|
||||
имяВетки = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
|
||||
если настройкиСборки.Конфигурация.Имя == имяТекущегоПроекта
|
||||
Файлы.СоздатьКаталог(путьКонфигурацииЕДТ)
|
||||
Файлы.Переместить("%CI_PROJECT_DIR/%{настройкиСборки.Конфигурация.Проект}", путьКонфигурацииЕДТ)
|
||||
@ -887,8 +955,8 @@
|
||||
знч адресРепозиторияКонфигурации = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{настройкиСборки
|
||||
.Конфигурация
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %{настройкиСборки.Конфигурация.Ветка}")
|
||||
Git_Clone(адресРепозиторияКонфигурации, настройкиСборки.Конфигурация.Ветка)
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %имяВетки")
|
||||
Git_Clone(адресРепозиторияКонфигурации, имяВетки)
|
||||
;
|
||||
|
||||
Консоль.Записать("ИсполняемыйФайлПлатформы: %путьКонфигурацииЕДТ")
|
||||
@ -900,17 +968,10 @@
|
||||
;
|
||||
|
||||
метод ОпубликоватьSonarQube()
|
||||
знч WP = СредаИсполнения.ПолучитьПеременную("WP")
|
||||
|
||||
знч CI_JOB_ID = СредаИсполнения.ПолучитьПеременную("CI_JOB_ID")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
знч CI_PROJECT_NAMESPACE = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_NAMESPACE")
|
||||
знч CI_PROJECT_PATH = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_PATH")
|
||||
знч CI_SERVER_HOST = СредаИсполнения.ПолучитьПеременную("CI_SERVER_HOST")
|
||||
знч CI_COMMIT_SHORT_SHA = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_SHORT_SHA")
|
||||
|
||||
знч SONARQUBE_TOKEN = СредаИсполнения.ПолучитьПеременную("SONARQUBE_TOKEN")
|
||||
|
||||
знч настройкиСкрипта = ПрочитатьНастройкиСкрипта()
|
||||
знч настройкиСборки = ПрочитатьНастройкиСборки("%CI_PROJECT_DIR")
|
||||
@ -941,54 +1002,32 @@
|
||||
Консоль.Записать("Создать каталог: %полныйПутьРезультатовТестов/sonarQube")
|
||||
Файлы.СоздатьКаталог("%полныйПутьРезультатовТестов/sonarQube")
|
||||
|
||||
знч путьКонфигурацииЕДТ = "%CI_PROJECT_DIR/%{настройкиСборки.Конфигурация.Имя}/%{настройкиСборки.Конфигурация.Проект}"
|
||||
|
||||
знч имяТекущегоПроекта = CI_PROJECT_PATH.Заменить("%CI_PROJECT_NAMESPACE/", "")
|
||||
если настройкиСборки.Конфигурация.Имя == имяТекущегоПроекта
|
||||
Файлы.СоздатьКаталог(путьКонфигурацииЕДТ)
|
||||
Файлы.Переместить("%CI_PROJECT_DIR/%{настройкиСборки.Конфигурация.Проект}", путьКонфигурацииЕДТ)
|
||||
иначе
|
||||
знч адресРепозиторияКонфигурации = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{настройкиСборки
|
||||
.Конфигурация
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияКонфигурации %{настройкиСборки.Конфигурация.Ветка}")
|
||||
Git_Clone(адресРепозиторияКонфигурации, настройкиСборки.Конфигурация.Ветка)
|
||||
;
|
||||
|
||||
знч файлРезультатовВалидации = "%полныйПутьРезультатовТестов/%{настройкиСборки.Конфигурация.Имя}.tsv"
|
||||
знч ошибкиEDT = ОшибкиEDT(файлРезультатовВалидации)
|
||||
|
||||
знч ошибкиSonarQube = ОшибкиВФорматеSonarQube(ошибкиEDT)
|
||||
знч файлSonarQube = "%полныйПутьРезультатовТестов/sonarQube/%{настройкиСборки.Конфигурация.Имя}.json"
|
||||
Консоль.Записать("ЗаписатьОшибкиВФорматSonarQube: %файлSonarQube %файлРезультатовВалидации")
|
||||
ЗаписатьОшибкиВФорматSonarQube(файлSonarQube, ошибкиSonarQube)
|
||||
|
||||
знч файлПараметровСканера = "%CI_PROJECT_DIR/sonar-project-%{настройкиСборки.Конфигурация.Имя}.properties"
|
||||
знч ключПроекта = "%CI_PROJECT_NAMESPACE-%{настройкиСборки.Конфигурация.Имя}"
|
||||
|
||||
//TODO: Сделать получение коммита для каждого проекта
|
||||
пер тегРелиза = CI_COMMIT_SHORT_SHA
|
||||
если настройкиСборки.Конфигурация.Имя != имяТекущегоПроекта
|
||||
тегРелиза = ДатаНовогоРелиза().Форматировать("гггг-ММ-дд")
|
||||
;
|
||||
|
||||
Консоль.Записать("СохранитьНастройкиСканера: %файлПараметровСканера %{настройкиСборки.СерверSonarQube} %ключПроекта %{настройкиСборки
|
||||
.Конфигурация
|
||||
.Проект} %тегРелиза %путьКонфигурацииЕДТ %файлSonarQube")
|
||||
СохранитьНастройкиСканера(файлПараметровСканера, настройкиСборки.СерверSonarQube, ключПроекта, настройкиСборки.Конфигурация
|
||||
.Проект, тегРелиза, путьКонфигурацииЕДТ, файлSonarQube)
|
||||
|
||||
Консоль.Записать("ЗапуститьSonarScanner: %файлПараметровСканера")
|
||||
ЗапуститьSonarScanner(файлПараметровСканера, SONARQUBE_TOKEN, настройкиСкрипта.CI_SONARSCANNER)
|
||||
|
||||
пер списокФайловСсылок = новый Массив()
|
||||
|
||||
пер адресСонарПроекта = настройкиСборки.СерверSonarQube
|
||||
если не адресСонарПроекта.ЗаканчиваетсяНа("/")
|
||||
адресСонарПроекта += "/"
|
||||
пер репозиторииДляПроверки = новый Массив()
|
||||
|
||||
если настройкиСборки.Конфигурация.Имя == имяТекущегоПроекта
|
||||
репозиторииДляПроверки.Добавить(настройкиСборки.Конфигурация)
|
||||
;
|
||||
|
||||
для репозиторийРасширения из настройкиСборки.ПрикладныеРасширения
|
||||
если репозиторийРасширения.Имя == имяТекущегоПроекта
|
||||
репозиторииДляПроверки.Добавить(репозиторийРасширения)
|
||||
;
|
||||
;
|
||||
|
||||
для репозиторий из репозиторииДляПроверки
|
||||
знч ключПроекта = ЗапуститьSonarScannerДляРепозитория(репозиторий, репозиторий.Имя == имяТекущегоПроекта)
|
||||
|
||||
пер адресСонарПроекта = настройкиСборки.СерверSonarQube
|
||||
если не адресСонарПроекта.ЗаканчиваетсяНа("/")
|
||||
адресСонарПроекта += "/"
|
||||
;
|
||||
адресСонарПроекта += "dashboard?id=%ключПроекта"
|
||||
списокФайловСсылок.Добавить(новый ОписаниеФайлаСсылкиАссетов("SonarQube", адресСонарПроекта))
|
||||
;
|
||||
адресСонарПроекта += "dashboard?id=%ключПроекта"
|
||||
списокФайловСсылок.Добавить(новый ОписаниеФайлаСсылкиАссетов("SonarQube", адресСонарПроекта))
|
||||
|
||||
знч имяФайлаАссетов = "%ИМЯ_КАТАЛОГА_СЛУЖЕБНОЙ_СБОРКИ/assets_sonarQube.json"
|
||||
Консоль.Записать("ЗаписатьОписаниеАссетов: %имяФайлаАссетов %CI_PROJECT_PATH %CI_JOB_ID")
|
||||
@ -996,6 +1035,60 @@
|
||||
"")
|
||||
;
|
||||
|
||||
метод ЗапуститьSonarScannerДляРепозитория(репозиторий: ОписаниеРепозитория, этоТекущийПроект: Булево): Строка
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_COMMIT_SHORT_SHA = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_SHORT_SHA")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
знч CI_PROJECT_NAMESPACE = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_NAMESPACE")
|
||||
знч CI_SERVER_HOST = СредаИсполнения.ПолучитьПеременную("CI_SERVER_HOST")
|
||||
|
||||
знч SONARQUBE_TOKEN = СредаИсполнения.ПолучитьПеременную("SONARQUBE_TOKEN")
|
||||
|
||||
знч настройкиСкрипта = ПрочитатьНастройкиСкрипта()
|
||||
знч настройкиСборки = ПрочитатьНастройкиСборки("%CI_PROJECT_DIR")
|
||||
|
||||
пер имяВетки = CI_COMMIT_BRANCH
|
||||
|
||||
знч путьРепозиторияЕДТ = "%CI_PROJECT_DIR/%{репозиторий.Имя}/%{репозиторий.Проект}"
|
||||
|
||||
если этоТекущийПроект
|
||||
Файлы.СоздатьКаталог(путьРепозиторияЕДТ)
|
||||
Файлы.Переместить("%CI_PROJECT_DIR/%{репозиторий.Проект}", путьРепозиторияЕДТ)
|
||||
иначе
|
||||
знч адресРепозитория = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторий.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозитория %имяВетки")
|
||||
Git_Clone(адресРепозитория, имяВетки)
|
||||
;
|
||||
|
||||
знч полныйПутьРезультатовТестов = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_РЕЗУЛЬТАТОВ_ТЕСТОВ"
|
||||
|
||||
знч файлРезультатовВалидации = "%полныйПутьРезультатовТестов/%{репозиторий.Имя}.tsv"
|
||||
знч ошибкиEDT = ОшибкиEDT(файлРезультатовВалидации)
|
||||
|
||||
знч ошибкиSonarQube = ОшибкиВФорматеSonarQube(ошибкиEDT)
|
||||
знч файлSonarQube = "%полныйПутьРезультатовТестов/sonarQube/%{репозиторий.Имя}.json"
|
||||
Консоль.Записать("ЗаписатьОшибкиВФорматSonarQube: %файлSonarQube %файлРезультатовВалидации")
|
||||
ЗаписатьОшибкиВФорматSonarQube(файлSonarQube, ошибкиSonarQube)
|
||||
|
||||
знч файлПараметровСканера = "%CI_PROJECT_DIR/sonar-project-%{репозиторий.Имя}.properties"
|
||||
знч ключПроекта = "%CI_PROJECT_NAMESPACE-%{репозиторий.Имя}"
|
||||
|
||||
//TODO: Сделать получение коммита для каждого проекта
|
||||
пер тегРелиза = CI_COMMIT_SHORT_SHA
|
||||
если не этоТекущийПроект
|
||||
тегРелиза = ДатаНовогоРелиза().Форматировать("гггг-ММ-дд")
|
||||
;
|
||||
|
||||
Консоль.Записать("СохранитьНастройкиСканера: %файлПараметровСканера %{настройкиСборки.СерверSonarQube} %ключПроекта %{репозиторий.Проект} %тегРелиза %путьРепозиторияЕДТ %файлSonarQube")
|
||||
СохранитьНастройкиСканера(файлПараметровСканера, настройкиСборки.СерверSonarQube, ключПроекта, репозиторий.Проект, тегРелиза, путьРепозиторияЕДТ, файлSonarQube)
|
||||
|
||||
Консоль.Записать("ЗапуститьSonarScanner: %файлПараметровСканера")
|
||||
ЗапуститьSonarScanner(файлПараметровСканера, SONARQUBE_TOKEN, настройкиСкрипта.CI_SONARSCANNER)
|
||||
|
||||
возврат ключПроекта
|
||||
;
|
||||
|
||||
структура ОписаниеНастроекАвтофич
|
||||
пер ТестоваяБаза: ОписаниеНастроекТестовойБазы
|
||||
пер Шаблоны: ОписаниеНастроекШаблонов
|
||||
@ -1167,15 +1260,25 @@
|
||||
;
|
||||
|
||||
метод ПротестироватьТестовуюБазу(репозиторийСценарныхТестов: ОписаниеРепозитория, настройкиСкрипта: ОписаниеНастроекСкрипта, настройкиСборки: ОписаниеНастроекСборки, исполняемыйФайлПлатформы: Строка)
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
знч CI_PROJECT_NAMESPACE = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_NAMESPACE")
|
||||
знч CI_SERVER_HOST = СредаИсполнения.ПолучитьПеременную("CI_SERVER_HOST")
|
||||
|
||||
знч запросНаСлияние = ПараметрыЗапросаНаСлияние()
|
||||
|
||||
пер имяВетки = CI_COMMIT_BRANCH
|
||||
если запросНаСлияние != Неопределено
|
||||
имяВетки = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
// TODO: Сделать проверку на существование ветки
|
||||
имяВетки = "master"
|
||||
|
||||
знч адресРепозиторияТестов = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторийСценарныхТестов
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияТестов %{репозиторийСценарныхТестов.Ветка}")
|
||||
Git_Clone(адресРепозиторияТестов, репозиторийСценарныхТестов.Ветка)
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияТестов %имяВетки")
|
||||
Git_Clone(адресРепозиторияТестов, имяВетки)
|
||||
|
||||
знч настройкиАвтофич = ПрочитатьНастройкиАвтофич("%CI_PROJECT_DIR/%{репозиторийСценарныхТестов.Имя}/auto_features/AFParams.json")
|
||||
|
||||
@ -1621,6 +1724,7 @@
|
||||
;
|
||||
|
||||
метод ОпубликоватьAllureОтчет()
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_JOB_ID = СредаИсполнения.ПолучитьПеременную("CI_JOB_ID")
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
@ -1629,12 +1733,20 @@
|
||||
знч CI_SERVER_HOST = СредаИсполнения.ПолучитьПеременную("CI_SERVER_HOST")
|
||||
|
||||
знч настройки = ПрочитатьНастройкиСборки("%CI_PROJECT_DIR")
|
||||
знч запросНаСлияние = ПараметрыЗапросаНаСлияние()
|
||||
|
||||
пер имяВетки = CI_COMMIT_BRANCH
|
||||
если запросНаСлияние != Неопределено
|
||||
имяВетки = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
// TODO: Сделать проверку на существование ветки
|
||||
имяВетки = "master"
|
||||
|
||||
для репозиторийСценарныхТестов из настройки.СценарныеТесты
|
||||
знч адресРепозиторияТестов = "https://gitlab-ci-token:%CI_JOB_TOKEN@%CI_SERVER_HOST/%CI_PROJECT_NAMESPACE/%{репозиторийСценарныхТестов
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияТестов %{репозиторийСценарныхТестов.Ветка}")
|
||||
Git_Clone(адресРепозиторияТестов, репозиторийСценарныхТестов.Ветка)
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияТестов %имяВетки")
|
||||
Git_Clone(адресРепозиторияТестов, имяВетки)
|
||||
|
||||
знч настройкиАвтофич = ПрочитатьНастройкиАвтофич("%CI_PROJECT_DIR/%{репозиторийСценарныхТестов.Имя}/auto_features/AFParams.json")
|
||||
|
||||
@ -1745,6 +1857,7 @@
|
||||
;
|
||||
|
||||
метод ПроверитьКоммитыРепозиторияДляПоследнегоРелиза(репозиторий: ОписаниеРепозитория, датаПоследнегоРелиза: ДатаВремя): ДатаВремя?
|
||||
знч CI_COMMIT_BRANCH = СредаИсполнения.ПолучитьПеременную("CI_COMMIT_BRANCH")
|
||||
знч CI_PROJECT_NAMESPACE = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_NAMESPACE")
|
||||
знч CI_SERVER_HOST = СредаИсполнения.ПолучитьПеременную("CI_SERVER_HOST")
|
||||
|
||||
@ -1753,12 +1866,11 @@
|
||||
знч имяПроекта = "%CI_PROJECT_NAMESPACE/%{репозиторий.Имя}".Заменить("/", "\%2F")
|
||||
пер коммиты = новый Массив()
|
||||
если датаПоследнегоРелиза == новый ДатаВремя(1, 1, 1)
|
||||
Консоль.Записать("Commits_List: %{репозиторий.Ветка} %имяПроекта %CI_SERVER_HOST")
|
||||
коммиты = Commits_List(репозиторий.Ветка, имяПроекта, токен, CI_SERVER_HOST, "", датаПоследнегоРелиза)
|
||||
Консоль.Записать("Commits_List: %CI_COMMIT_BRANCH %имяПроекта %CI_SERVER_HOST")
|
||||
коммиты = Commits_List(CI_COMMIT_BRANCH, имяПроекта, токен, CI_SERVER_HOST, "", датаПоследнегоРелиза)
|
||||
иначе
|
||||
Консоль.Записать("Commits_List_Since: %{репозиторий
|
||||
.Ветка} %имяПроекта %CI_SERVER_HOST %датаПоследнегоРелиза")
|
||||
коммиты = Commits_List_Since(репозиторий.Ветка, имяПроекта, токен, CI_SERVER_HOST, датаПоследнегоРелиза)
|
||||
Консоль.Записать("Commits_List_Since: %CI_COMMIT_BRANCH %имяПроекта %CI_SERVER_HOST %датаПоследнегоРелиза")
|
||||
коммиты = Commits_List_Since(CI_COMMIT_BRANCH, имяПроекта, токен, CI_SERVER_HOST, датаПоследнегоРелиза)
|
||||
;
|
||||
если коммиты.Пусто()
|
||||
Консоль.Записать("Нет новых коммитов в репозитории %{репозиторий.Имя}")
|
||||
@ -1812,12 +1924,11 @@
|
||||
|
||||
структура ОписаниеРепозитория
|
||||
знч Имя: Строка
|
||||
пер Ветка: Строка
|
||||
знч Проект: Строка
|
||||
знч ПеременнаяТокена: Строка
|
||||
|
||||
конструктор (Имя, Ветка, ПеременнаяТокена)
|
||||
конструктор (Имя, Ветка, Проект, ПеременнаяТокена)
|
||||
конструктор (Имя, ПеременнаяТокена)
|
||||
конструктор (Имя, Проект, ПеременнаяТокена)
|
||||
;
|
||||
|
||||
|
||||
@ -1860,21 +1971,9 @@
|
||||
пер настройки = СериализацияJson.ПрочитатьОбъект(поток, Тип(ОписаниеНастроекСборки),
|
||||
настройкиJson) как ОписаниеНастроекСборки
|
||||
|
||||
если запросНаСлияние != Неопределено
|
||||
если настройки.Конфигурация.Имя == запросНаСлияние.имяПроекта
|
||||
настройки.Конфигурация.Ветка = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
;
|
||||
|
||||
пер прикладныеРасширения = новый Массив()
|
||||
для репозиторийРасширения из настройки.ПрикладныеРасширения
|
||||
пер веткаРасширения = репозиторийРасширения["Ветка"]
|
||||
если запросНаСлияние != Неопределено
|
||||
если репозиторийРасширения["Имя"] == запросНаСлияние.имяПроекта
|
||||
веткаРасширения = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
;
|
||||
знч описание = новый ОписаниеРепозитория(репозиторийРасширения["Имя"], веткаРасширения, репозиторийРасширения["Проект"],
|
||||
знч описание = новый ОписаниеРепозитория(репозиторийРасширения["Имя"], репозиторийРасширения["Проект"],
|
||||
репозиторийРасширения["ПеременнаяТокена"])
|
||||
прикладныеРасширения.Добавить(описание)
|
||||
;
|
||||
@ -1882,13 +1981,7 @@
|
||||
|
||||
пер тестовыеРасширения = новый Массив()
|
||||
для репозиторийРасширения из настройки.ТестовыеРасширения
|
||||
пер веткаРасширения = репозиторийРасширения["Ветка"]
|
||||
если запросНаСлияние != Неопределено
|
||||
если репозиторийРасширения["Имя"] == запросНаСлияние.имяПроекта
|
||||
веткаРасширения = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
;
|
||||
знч описание = новый ОписаниеРепозитория(репозиторийРасширения["Имя"], веткаРасширения, репозиторийРасширения["Проект"],
|
||||
знч описание = новый ОписаниеРепозитория(репозиторийРасширения["Имя"], репозиторийРасширения["Проект"],
|
||||
репозиторийРасширения["ПеременнаяТокена"])
|
||||
тестовыеРасширения.Добавить(описание)
|
||||
;
|
||||
@ -1896,13 +1989,7 @@
|
||||
|
||||
пер сценарныеТесты = новый Массив()
|
||||
для репозиторийТестов из настройки.СценарныеТесты
|
||||
пер веткаТестов = репозиторийТестов["Ветка"]
|
||||
если запросНаСлияние != Неопределено
|
||||
если репозиторийТестов["Имя"] == запросНаСлияние.имяПроекта
|
||||
веткаТестов = запросНаСлияние.веткаПроекта
|
||||
;
|
||||
;
|
||||
знч описание = новый ОписаниеРепозитория(репозиторийТестов["Имя"], веткаТестов, репозиторийТестов["ПеременнаяТокена"])
|
||||
знч описание = новый ОписаниеРепозитория(репозиторийТестов["Имя"], "", репозиторийТестов["ПеременнаяТокена"])
|
||||
сценарныеТесты.Добавить(описание)
|
||||
;
|
||||
настройки.СценарныеТесты = сценарныеТесты
|
||||
|
Reference in New Issue
Block a user