Миграция на пайплайн версии 1.6.3#
SERVICE PIPELINE (CDJE_UFS_PIPELINE_SERVICE)#
Для миграции пайплайна на версию 1.6.3 необходимо:
в джобе CDJE_UFS_PIPELINE_SERVICE обеспечить (если не выполено) выполнение пунктов 1-7 из раздела Настройка Service Pipeline
Запустить процесс миграции скриптов PIPELINE версии release/D-01.045.084 (1.6.3). Нажать Собрать с параметрами и указать следующее:
SERVICE_VERSION: release_service/D-01.224.001-3835
ARTIFACT_TYPE: PIPELINE
ARTIFACT_VERSION: release/D-01.045.084
PARAMS: MIGRATION
В результате выполнения этапа в репозиторий {код компонента}mailbridge_pipeline{стенд} в ветку master произойдет миграция скриптов pipeline, в репозиторий {код компонента}mailbridge_common{стенд} произойдет миграция конфигурационных файлов.
Настройка deploy pipeline#
Заполнение файла environment.json#
За подробными инструкциями по первичной настройке в этом разделе см. Настройка deploy pipeline
Изменить в репозитории ci02606786_mailbridge_common_{стенд} в файл environment.json (находится в корне репозитория) следующий блок, указан стенд {стенд}. В файле должен быть указанный в примере блок с названием нужного стенда. Любые изменения в этом файле требуют автореконфигурации Job (запуск без указания параметров).
Ниже описание только тех параметров, которые нужно добавить (изменить) при выполнении миграции (в блок «__default» миграция будет выполнена автоматически):
"{стенд}": {
"skipPlatformVersionCheck": "true",
"toolingAnsibleTemplateVersion": "ansible29",
"iag": "false",
"installer": {
"common": {
"groupId": "Nexus_PROD",
"artifactId": "CI01027901_AS_EFS_Installer.Common",
"version": "D-01.001.00-*",
"classifier": "distrib",
"packaging": "zip"
},
"migration": {
"groupId": "Nexus_PROD",
"artifactId": "CI01027846_AS_EFS_Installer.Migration",
"version": "D-02.001.00-343",
"classifier": "distrib",
"packaging": "zip"
}
...
},
...
"envNotification": "false",
...
...
}
В common репозитории по пути installer/system/efs/config/parameters/ssl.conf необходимо поменять значение
ssl.ose.keyStore.mq.CertAliasна значение по ключуssl.ose.istio.keyStore.egress.CertAliasв этом же файле
Реконфигурация install pipeline#
Для реконфигурации CIJE_UFS_PIPELINE_INSTALLER джобы (если была создана и использована для деплоя ранее) необходимо выполнить п. 4-6 из раздела Создание Deploy Pipeline, иначе выполнить все пункты
Миграция параметров в MIGRATION_FP_CONF и запуск install#
Для успешной настройки параметров стенда в соответствии с требованиями pipeline v1.6.3 необходимо:
Открыть репозиторий {код компонента}mailbridge_mail{стенд} в редакторе
Создать бэкап для отката в случае возвращения на прежнюю версию (например в соседнюю ветку)
Для каждого из .conf файлов по пути
conf/config/parameters/перенести значения параметров из common репозитория.
Сделать необходимо только для параметров из common в файлеinstaller/system/efs/config/parameters/openShift.conf.
Пример: mail_back.ose.deployment.spec.replicas=${config.mail.ose.mail_back.deployment.replicas}
config.mail.ose.mail_back.deployment.replicas взять из common репозитория и подставить значение
Результат: mail_back.ose.deployment.spec.replicas=2
Требование: необходимо, чтобы все JSON при переносе значений были плоскими (в одну строку обратного слэша)
Пример неправильный: config.mail.ose.mail_kafka_gateway.kafka.bootstrapServers=[\
{ "group": "group1", "restTimeoutMs": 60000, "restConnectionsPull": 100, "hostsPorts": ["vm-test-sy-kafka-138.vdc11.sy.dev.sbt:9093"], "topics": [{"topic": "topic1", "limiterEnabled": "true", "limitTps": 1, "groupId": "CI02606786_MailBridge"}] }\
]
Пример правильный: config.mail.ose.mail_kafka_gateway.kafka.bootstrapServers=[{"group":"group1","restTimeoutMs":60000,"restConnectionsPull":100,"hostsPorts":["vm-test-sy-kafka-138.vdc11.sy.dev.sbt:9093"],"topics":[{"topic":"topic1","limiterEnabled":"true","limitTps":1,"groupId":"CI02606786_MailBridge"}]}]
Переменные global.* должны продолжать ссылаться на значения в common
Пример: mail_core.ose.deployment.spec.template.spec.containers.mail_core.env.isSynapseIstioEnabled=${global.multiClusters.isSynapseIstioEnabled}
Результат (без изменений): mail_core.ose.deployment.spec.template.spec.containers.mail_core.env.isSynapseIstioEnabled=${global.multiClusters.isSynapseIstioEnabled}
Выполнить п.2 из раздела Запуск deploy Pipeline для миграции параметров из дистрибутива в репозиторий {код компонента}mailbridge_mail{стенд}
Заполнить недостающие поля (могут появиться при выпуске нового дистрибутива) значениями после миграции, если значения подставленные по умолчанию из дистрибутива не удовлетворяют требованиям
Запустить деплой дистрибутива в соответствии с п.6-8 в разделе Запуск deploy Pipeline