feat(templateUpdater): основная логика + cicd

This commit is contained in:
Mikhail Trubnikov
2025-12-04 08:23:57 +10:00
parent 74419c0435
commit df9c29358c
20 changed files with 622 additions and 4 deletions

View File

@@ -17,6 +17,7 @@ variables:
PROD_TEMPLATE_TASK_GENERATOR: "parr/parr-template-task-generator"
PROD_JOB_AUTO_CONTROL: "parr/parr-job-auto-control"
PROD_TEMPLATE_MATCHER: "parr/parr-template-matcher"
PROD_TEMPLATE_UPDATER: "parr/parr-template-updater"
stages:
- build
@@ -788,7 +789,7 @@ prod_job_auto_control_build:
prod_job_auto_control_deploy:
stage: deploy
environment:
name: parr-template-activator
name: parr-job-auto-control
only:
- /^jac[0-9]+\.[0-9]+\.[0-9]+$/
except:
@@ -837,7 +838,7 @@ prod_template_matcher_build:
prod_template_matcher_deploy:
stage: deploy
environment:
name: parr-template-activator
name: parr-template-matcher
only:
- /^tm[0-9]+\.[0-9]+\.[0-9]+$/
except:
@@ -852,3 +853,51 @@ prod_template_matcher_deploy:
tags:
- ${RUNNER}
### TEMPLATE UPDATER PROD ###
prod_template_updater_build:
stage: build
only:
- /^tu[0-9]+\.[0-9]+\.[0-9]+$/
except:
- branches
services:
- name: docker:20.10.21-dind
command: [
"--insecure-registry=10.99.253.167:8090",
"--registry-mirror=http://10.99.253.167:8090",
"--insecure-registry=harbor.dvgd.rzd",
"--tls=false"
]
variables:
DOCKER_HOST: tcp://docker:2375
DOCKER_DRIVER: overlay2
DOCKER_TLS_CERTDIR: ""
script:
- APP_VERSION=$(echo $CI_COMMIT_TAG | tr -d tu)
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tu/v/g')
- docker build -t $REPO/$PROD_TEMPLATE_UPDATER:$IMAGE_VERSION -t $REPO/$PROD_TEMPLATE_UPDATER:latest -t $PROD_TEMPLATE_UPDATER:$IMAGE_VERSION -t $PROD_TEMPLATE_UPDATER:latest --build-arg app_version=$APP_VERSION -f PARR.TemplateUpdaterWorker/Dockerfile .
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
- docker push --all-tags $REPO/$PROD_TEMPLATE_UPDATER
tags:
- docker
prod_template_updater_deploy:
stage: deploy
environment:
name: parr-template-updater
only:
- /^tu[0-9]+\.[0-9]+\.[0-9]+$/
except:
- branches
script:
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tu/v/g')
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.template-updater.yml parr-template-updater --with-registry-auth
parallel:
matrix:
- RUNNER: shell-api-swarm-01
tags:
- ${RUNNER}