feat(taskReconciliation, workloadBuilder): Dockerfile, ci-cd

This commit is contained in:
Mikhail Trubnikov
2026-04-24 09:49:13 +10:00
parent e8086b3a7d
commit ee119caf91
13 changed files with 261 additions and 106 deletions

View File

@@ -18,6 +18,9 @@ variables:
PROD_JOB_AUTO_CONTROL: "parr/parr-job-auto-control"
PROD_TEMPLATE_MATCHER: "parr/parr-template-matcher"
PROD_TEMPLATE_UPDATER: "parr/parr-template-updater"
PROD_WORKLOAD_BUILDER: "parr/parr-workload-builder"
PROD_TASK_RECONCILIATION: "parr/parr-task-reconciliation"
stages:
- build
@@ -899,5 +902,102 @@ prod_template_updater_deploy:
parallel:
matrix:
- RUNNER: shell-api-swarm-01
tags:
- ${RUNNER}
### WORKLOAD BUILDER PROD ###
prod_workload_builder_build:
stage: build
only:
- /^wb[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 wb)
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/wb/v/g')
- docker build -t $REPO/$PROD_WORKLOAD_BUILDER:$IMAGE_VERSION -t $REPO/$PROD_WORKLOAD_BUILDER:latest -t $PROD_WORKLOAD_BUILDER:$IMAGE_VERSION -t $PROD_WORKLOAD_BUILDER:latest --build-arg app_version=$APP_VERSION -f PARR.WorkloadBuilderWorker/Dockerfile .
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
- docker push --all-tags $REPO/$PROD_WORKLOAD_BUILDER
tags:
- docker
prod_workload_builder_deploy:
stage: deploy
environment:
name: parr-workload-builder
only:
- /^wb[0-9]+\.[0-9]+\.[0-9]+$/
except:
- branches
script:
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/wb/v/g')
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.workload-builder.yml parr-workload-builder --with-registry-auth
parallel:
matrix:
- RUNNER: shell-api-swarm-01
tags:
- ${RUNNER}
### TASK RECONCILIATION PROD ###
prod_task_reconciliation_build:
stage: build
only:
- /^tr[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 tr)
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tr/v/g')
- docker build -t $REPO/$PROD_TASK_RECONCILIATION:$IMAGE_VERSION -t $REPO/$PROD_TASK_RECONCILIATION:latest -t $PROD_TASK_RECONCILIATION:$IMAGE_VERSION -t $PROD_TASK_RECONCILIATION:latest --build-arg app_version=$APP_VERSION -f PARR.TaskReconciliationWorker/Dockerfile .
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
- docker push --all-tags $REPO/$PROD_TASK_RECONCILIATION
tags:
- docker
prod_task_reconciliation_deploy:
stage: deploy
environment:
name: parr-task-reconciliation
only:
- /^tr[0-9]+\.[0-9]+\.[0-9]+$/
except:
- branches
script:
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tr/v/g')
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.task-reconciliation.yml parr-task-reconciliation --with-registry-auth
parallel:
matrix:
- RUNNER: shell-api-swarm-01
tags:
- ${RUNNER}