1072 lines
34 KiB
YAML
1072 lines
34 KiB
YAML
variables:
|
|
REPO: "harbor.dvgd.rzd"
|
|
PROD_NAME_API: "parr/parr-api"
|
|
PROD_NAME_AIHIT_LOADER: "parr/parr-aihit-loader"
|
|
PROD_NAME_AIHIT_SYNCER: "parr/parr-aihit-syncer"
|
|
PROD_NAME_AIHIT_RELATIONSHIPS_SYNCER: "parr/parr-aihit-relationships-syncer"
|
|
PROD_NAME_ESPP_TEMPLATE: "parr/parr-espp-template-sync"
|
|
PROD_NAME_ESPP_SCHEDULE: "parr/parr-espp-schedule-sync"
|
|
PROD_NAME_GENERATOR_TEMPLATES: "parr/parr-generator-templates"
|
|
PROD_NAME_ESPP_ORDER_LOADER: "parr/parr-espp-order-loader"
|
|
PROD_NAME_ESPP_ORDER_MANAGER: "parr/parr-espp-order-manager"
|
|
PROD_NAME_MASTER: "parr/parr-master"
|
|
PROD_NAME_NEXT_RUN: "parr/parr-next-run"
|
|
PROD_TEMPLATE_DISTRIBOTOR: "parr/parr-template-distributor"
|
|
PROD_TEMPLATE_ACTIVATOR: "parr/parr-template-activator"
|
|
PROD_TEMPLATE_GENERATOR: "parr/parr-template-generator"
|
|
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"
|
|
PROD_WORKLOAD_BUILDER: "parr/parr-workload-builder"
|
|
PROD_TASK_RECONCILIATION: "parr/parr-task-reconciliation"
|
|
PROD_SNAPSHOTS: "parr/snapshots"
|
|
|
|
|
|
stages:
|
|
- build
|
|
- deploy
|
|
|
|
|
|
### API PROD ###
|
|
prod_build:
|
|
stage: build
|
|
only:
|
|
- /^v[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=10.99.253.167:8088",
|
|
"--registry-mirror=http://10.99.253.167:8088",
|
|
"--insecure-registry=harbor.dvgd.rzd",
|
|
"--tls=false"
|
|
]
|
|
variables:
|
|
DOCKER_HOST: tcp://docker:2375
|
|
DOCKER_DRIVER: overlay2
|
|
DOCKER_TLS_CERTDIR: ""
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | tr -d v)
|
|
- AUTHOR=$CI_COMMIT_AUTHOR
|
|
- |
|
|
docker build \
|
|
-t $REPO/$PROD_NAME_API:$CI_COMMIT_TAG \
|
|
-t $REPO/$PROD_NAME_API:latest \
|
|
-t $PROD_NAME_API:$CI_COMMIT_TAG \
|
|
-t $PROD_NAME_API:latest \
|
|
--build-arg app_version=$IMAGE_VERSION \
|
|
--build-arg commit_author="$AUTHOR" \
|
|
-f PARR.API/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_API
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: prod
|
|
url: http://10.99.253.216:8082/api/v1/version
|
|
only:
|
|
- /^v[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
#- tag=$CI_COMMIT_TAG docker compose up -d
|
|
- tag=$CI_COMMIT_TAG docker stack deploy -c docker-compose.yml parr-api --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
#- RUNNER: shell-1
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### AIHIT LOADER PROD ###
|
|
prod_aihit_loader_build:
|
|
stage: build
|
|
only:
|
|
- /^al[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=10.99.253.167:8088",
|
|
"--registry-mirror=http://10.99.253.167:8088",
|
|
"--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 al)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/al/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_AIHIT_LOADER:$IMAGE_VERSION -t $REPO/$PROD_NAME_AIHIT_LOADER:latest -t $PROD_NAME_AIHIT_LOADER:$IMAGE_VERSION -t $PROD_NAME_AIHIT_LOADER:latest --build-arg app_version=$APP_VERSION -f PARR.AIHITLoaderWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_AIHIT_LOADER
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_aihit_loader_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-aihit-loader
|
|
only:
|
|
- /^al[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/al/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker compose -f docker-compose.aihit-loader.yml up -d
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-as-1
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
|
|
### AIHIT SYNCER PROD ###
|
|
prod_aihit_syncer_build:
|
|
stage: build
|
|
only:
|
|
- /^as[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=10.99.253.167:8088",
|
|
"--registry-mirror=http://10.99.253.167:8088",
|
|
"--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 as)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/as/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_AIHIT_SYNCER:$IMAGE_VERSION -t $REPO/$PROD_NAME_AIHIT_SYNCER:latest -t $PROD_NAME_AIHIT_SYNCER:$IMAGE_VERSION -t $PROD_NAME_AIHIT_SYNCER:latest --build-arg app_version=$APP_VERSION -f PARR.AIHITSyncerWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_AIHIT_SYNCER
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_aihit_syncer_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-aihit-syncer
|
|
only:
|
|
- /^as[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/as/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.aihit-syncer.yml parr-aihit-syncer --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
### AIHIT RELATIONSHPS SYNCER PROD ###
|
|
prod_aihit_relationships_syncer_build:
|
|
stage: build
|
|
only:
|
|
- /^ars[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://c:8090",
|
|
"--insecure-registry=10.99.253.167:8088",
|
|
"--registry-mirror=http://10.99.253.167:8088",
|
|
"--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 ars)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ars/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_AIHIT_RELATIONSHIPS_SYNCER:$IMAGE_VERSION -t $REPO/$PROD_NAME_AIHIT_RELATIONSHIPS_SYNCER:latest -t $PROD_NAME_AIHIT_RELATIONSHIPS_SYNCER:$IMAGE_VERSION -t $PROD_NAME_AIHIT_RELATIONSHIPS_SYNCER:latest --build-arg app_version=$APP_VERSION -f PARR.AIHITRelationshipsSyncerWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_AIHIT_RELATIONSHIPS_SYNCER
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_aihit_relationships_syncer_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-aihit-relationships-syncer
|
|
only:
|
|
- /^ars[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ars/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker compose -f docker-compose.aihit-relationships-syncer.yml up -d
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-as-1
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### ESPP TEMPLATE PROD ###
|
|
prod_espp-template_build:
|
|
stage: build
|
|
only:
|
|
- /^et[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=10.99.253.167:8088",
|
|
"--registry-mirror=http://10.99.253.167:8088",
|
|
"--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 et)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/et/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_ESPP_TEMPLATE:$IMAGE_VERSION -t $REPO/$PROD_NAME_ESPP_TEMPLATE:latest -t $PROD_NAME_ESPP_TEMPLATE:$IMAGE_VERSION -t $PROD_NAME_ESPP_TEMPLATE:latest --build-arg app_version=$APP_VERSION -f PARR.EsppTemplateSyncWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_ESPP_TEMPLATE
|
|
tags:
|
|
- docker-et
|
|
|
|
|
|
prod_espp-template_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-espp-template-sync
|
|
only:
|
|
- /^et[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/et/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
#- tag=$IMAGE_VERSION docker compose -f docker-compose.espp-template-sync.yml up -d
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.espp-template-sync.yml parr-espp --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
#- RUNNER: shell-et-1
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### GENERATOR TEMPLATES PROD ###
|
|
prod_generator_templates_build:
|
|
stage: build
|
|
only:
|
|
- /^gt[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 gt)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/gt/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_GENERATOR_TEMPLATES:$IMAGE_VERSION -t $REPO/$PROD_NAME_GENERATOR_TEMPLATES:latest -t $PROD_NAME_GENERATOR_TEMPLATES:$IMAGE_VERSION -t $PROD_NAME_GENERATOR_TEMPLATES:latest --build-arg app_version=$APP_VERSION -f PARR.GeneratorTemplatesWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_GENERATOR_TEMPLATES
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_generator_templates_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-generator-templates-sync
|
|
only:
|
|
- /^gt[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/gt/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.generator-templates.yml parr-generator-templates --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### ESPP ORDER LOADER PROD ###
|
|
prod_espp_order_loader_build:
|
|
stage: build
|
|
only:
|
|
- /^ol[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 ol)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ol/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_ESPP_ORDER_LOADER:$IMAGE_VERSION -t $REPO/$PROD_NAME_ESPP_ORDER_LOADER:latest -t $PROD_NAME_ESPP_ORDER_LOADER:$IMAGE_VERSION -t $PROD_NAME_ESPP_ORDER_LOADER:latest --build-arg app_version=$APP_VERSION -f PARR.EsppOrderLoaderWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_ESPP_ORDER_LOADER
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_espp_order_loader_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-espp-order-loader
|
|
only:
|
|
- /^ol[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ol/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.espp-order-loader.yml parr-espp-order-loader --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### ESPP ORDER MANAGER PROD ###
|
|
prod_espp_order_manager_build:
|
|
stage: build
|
|
only:
|
|
- /^om[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 om)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/om/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_ESPP_ORDER_MANAGER:$IMAGE_VERSION -t $REPO/$PROD_NAME_ESPP_ORDER_MANAGER:latest -t $PROD_NAME_ESPP_ORDER_MANAGER:$IMAGE_VERSION -t $PROD_NAME_ESPP_ORDER_MANAGER:latest --build-arg app_version=$APP_VERSION -f PARR.EsppOrderManagerWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_ESPP_ORDER_MANAGER
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_espp_order_manager_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-espp-order-manager
|
|
only:
|
|
- /^om[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/om/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.espp-order-manager.yml parr-espp-order-manager --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### MASTER PROD ###
|
|
prod_master_build:
|
|
stage: build
|
|
only:
|
|
- /^m[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 m)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/m/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_MASTER:$IMAGE_VERSION -t $REPO/$PROD_NAME_MASTER:latest -t $PROD_NAME_MASTER:$IMAGE_VERSION -t $PROD_NAME_MASTER:latest --build-arg app_version=$APP_VERSION -f PARR.MasterWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_MASTER
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_master_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-master
|
|
only:
|
|
- /^m[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/m/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.master.yml parr-master --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### ESPP SCHEDULE SYNC PROD ###
|
|
prod_espp_schedule_build:
|
|
stage: build
|
|
only:
|
|
- /^es[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 es)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/es/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_ESPP_SCHEDULE:$IMAGE_VERSION -t $REPO/$PROD_NAME_ESPP_SCHEDULE:latest -t $PROD_NAME_ESPP_SCHEDULE:$IMAGE_VERSION -t $PROD_NAME_ESPP_SCHEDULE:latest --build-arg app_version=$APP_VERSION -f PARR.EsppScheduleSyncWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_ESPP_SCHEDULE
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_espp_schedule_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-espp-schedule-sync
|
|
only:
|
|
- /^es[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/es/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.espp-schedule-sync.yml parr-espp-schedule-sync --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
|
|
### NEXT RUN PROD ###
|
|
prod_next_run_build:
|
|
stage: build
|
|
only:
|
|
- /^nr[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 nr)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/nr/v/g')
|
|
- docker build -t $REPO/$PROD_NAME_NEXT_RUN:$IMAGE_VERSION -t $REPO/$PROD_NAME_NEXT_RUN:latest -t $PROD_NAME_NEXT_RUN:$IMAGE_VERSION -t $PROD_NAME_NEXT_RUN:latest --build-arg app_version=$APP_VERSION -f PARR.NextRunWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_NAME_NEXT_RUN
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_next_run_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-next-run
|
|
only:
|
|
- /^nr[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/nr/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.next-run.yml parr-next-run --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
|
|
### TEMPLATE DISTRIBUTOR PROD ###
|
|
prod_template_distributor_build:
|
|
stage: build
|
|
only:
|
|
- /^td[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 td)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/td/v/g')
|
|
- docker build -t $REPO/$PROD_TEMPLATE_DISTRIBOTOR:$IMAGE_VERSION -t $REPO/$PROD_TEMPLATE_DISTRIBOTOR:latest -t $PROD_TEMPLATE_DISTRIBOTOR:$IMAGE_VERSION -t $PROD_TEMPLATE_DISTRIBOTOR:latest --build-arg app_version=$APP_VERSION -f PARR.TemplateDistributorWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_TEMPLATE_DISTRIBOTOR
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_template_distributor_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-template-distributor
|
|
only:
|
|
- /^td[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/td/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.template-distributor.yml parr-template-distributor --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### TEMPLATE ACTIVATOR PROD ###
|
|
prod_template_activator_build:
|
|
stage: build
|
|
only:
|
|
- /^ta[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 ta)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ta/v/g')
|
|
- docker build -t $REPO/$PROD_TEMPLATE_ACTIVATOR:$IMAGE_VERSION -t $REPO/$PROD_TEMPLATE_ACTIVATOR:latest -t $PROD_TEMPLATE_ACTIVATOR:$IMAGE_VERSION -t $PROD_TEMPLATE_ACTIVATOR:latest --build-arg app_version=$APP_VERSION -f PARR.TemplateActivatorWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_TEMPLATE_ACTIVATOR
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_template_activator_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-template-activator
|
|
only:
|
|
- /^ta[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ta/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.template-activator.yml parr-template-activator --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### TEMPLATE GENERATOR PROD ###
|
|
prod_template_generator_build:
|
|
stage: build
|
|
only:
|
|
- /^tg[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 tg)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tg/v/g')
|
|
- docker build -t $REPO/$PROD_TEMPLATE_GENERATOR:$IMAGE_VERSION -t $REPO/$PROD_TEMPLATE_GENERATOR:latest -t $PROD_TEMPLATE_GENERATOR:$IMAGE_VERSION -t $PROD_TEMPLATE_GENERATOR:latest --build-arg app_version=$APP_VERSION -f PARR.TemplateGeneratorWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_TEMPLATE_GENERATOR
|
|
tags:
|
|
- docker
|
|
|
|
prod_template_generator_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-template-generator
|
|
only:
|
|
- /^tg[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tg/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.template-generator.yml parr-template-generator --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### TEMPLATE TASK GENERATOR PROD ###
|
|
prod_template_task_generator_build:
|
|
stage: build
|
|
only:
|
|
- /^ttg[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 ttg)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ttg/v/g')
|
|
- docker build -t $REPO/$PROD_TEMPLATE_TASK_GENERATOR:$IMAGE_VERSION -t $REPO/$PROD_TEMPLATE_TASK_GENERATOR:latest -t $PROD_TEMPLATE_TASK_GENERATOR:$IMAGE_VERSION -t $PROD_TEMPLATE_TASK_GENERATOR:latest --build-arg app_version=$APP_VERSION -f PARR.TemplateTaskGeneratorWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_TEMPLATE_TASK_GENERATOR
|
|
tags:
|
|
- docker
|
|
|
|
prod_template_task_generator_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-template-task-generator
|
|
only:
|
|
- /^ttg[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/ttg/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.template-task-generator.yml parr-template-task-generator --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
### JOB AUTO CONTROL PROD ###
|
|
prod_job_auto_control_build:
|
|
stage: build
|
|
only:
|
|
- /^jac[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 jac)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/jac/v/g')
|
|
- docker build -t $REPO/$PROD_JOB_AUTO_CONTROL:$IMAGE_VERSION -t $REPO/$PROD_JOB_AUTO_CONTROL:latest -t $PROD_JOB_AUTO_CONTROL:$IMAGE_VERSION -t $PROD_JOB_AUTO_CONTROL:latest --build-arg app_version=$APP_VERSION -f PARR.JobAutoControlWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_JOB_AUTO_CONTROL
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_job_auto_control_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-job-auto-control
|
|
only:
|
|
- /^jac[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/jac/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.job-auto-control.yml parr-job-auto-control --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|
|
|
|
|
|
|
|
### TEMPLATE MATCHER PROD ###
|
|
prod_template_matcher_build:
|
|
stage: build
|
|
only:
|
|
- /^tm[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 tm)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tm/v/g')
|
|
- docker build -t $REPO/$PROD_TEMPLATE_MATCHER:$IMAGE_VERSION -t $REPO/$PROD_TEMPLATE_MATCHER:latest -t $PROD_TEMPLATE_MATCHER:$IMAGE_VERSION -t $PROD_TEMPLATE_MATCHER:latest --build-arg app_version=$APP_VERSION -f PARR.TemplateMatcherWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_TEMPLATE_MATCHER
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_template_matcher_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-template-matcher
|
|
only:
|
|
- /^tm[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/tm/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.template-matcher.yml parr-template-matcher --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
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}
|
|
|
|
|
|
|
|
### 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}
|
|
|
|
|
|
### SNAPSHOTS PROD ###
|
|
prod_snapshots_build:
|
|
stage: build
|
|
only:
|
|
- /^sn[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 sn)
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/sn/v/g')
|
|
- AUTHOR=$CI_COMMIT_AUTHOR
|
|
- |
|
|
docker build \
|
|
-t $REPO/$PROD_SNAPSHOTS:IMAGE_VERSION \
|
|
-t $REPO/$PROD_SNAPSHOTS:latest \
|
|
-t $PROD_SNAPSHOTS:IMAGE_VERSION \
|
|
-t $PROD_SNAPSHOTS:latest \
|
|
--build-arg app_version=$APP_VERSION \
|
|
--build-arg commit_author="$AUTHOR" \
|
|
-f PARR.SnapshotWorker/Dockerfile .
|
|
- docker login -u $HARBOR_PUSH_USER -p $HARBOR_PUSH_PASS $REPO
|
|
- docker push --all-tags $REPO/$PROD_SNAPSHOTS
|
|
tags:
|
|
- docker
|
|
|
|
|
|
prod_snapshots_deploy:
|
|
stage: deploy
|
|
environment:
|
|
name: parr-snapshots
|
|
only:
|
|
- /^sn[0-9]+\.[0-9]+\.[0-9]+$/
|
|
except:
|
|
- branches
|
|
script:
|
|
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | sed 's/sn/v/g')
|
|
- docker login -u $HARBOR_PULL_USER -p $HARBOR_PULL_PASS $REPO
|
|
#- tag=$CI_COMMIT_TAG docker compose up -d
|
|
- tag=$IMAGE_VERSION docker stack deploy -c docker-compose.snapshots.yml parr-snapshots --with-registry-auth
|
|
parallel:
|
|
matrix:
|
|
- RUNNER: shell-api-swarm-01
|
|
tags:
|
|
- ${RUNNER}
|