cicd
This commit is contained in:
93
.gitlab-ci.yml
Normal file
93
.gitlab-ci.yml
Normal file
@@ -0,0 +1,93 @@
|
||||
variables:
|
||||
REPO: "10.99.253.167:8088"
|
||||
PROD_NAME_API: "parr/parr-api"
|
||||
PROD_NAME_AIHIT: "parr/parr-aihit-syncher"
|
||||
|
||||
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"]
|
||||
variables:
|
||||
DOCKER_HOST: tcp://docker:2375
|
||||
DOCKER_DRIVER: overlay2
|
||||
DOCKER_TLS_CERTDIR: ""
|
||||
script:
|
||||
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | tr -d v)
|
||||
- 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 -f PARR.API/Dockerfile .
|
||||
- docker login -u $NEXUS_PUSH_USER -p $NEXUS_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.215:8090/api/v1/version
|
||||
only:
|
||||
- /^v[0-9]+\.[0-9]+\.[0-9]+$/
|
||||
except:
|
||||
- branches
|
||||
script:
|
||||
- tag=$CI_COMMIT_TAG docker compose up -d
|
||||
parallel:
|
||||
matrix:
|
||||
- RUNNER: shell-1
|
||||
tags:
|
||||
- ${RUNNER}
|
||||
|
||||
|
||||
|
||||
|
||||
### AIHIT PROD ###
|
||||
prod_aihit_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"]
|
||||
variables:
|
||||
DOCKER_HOST: tcp://docker:2375
|
||||
DOCKER_DRIVER: overlay2
|
||||
DOCKER_TLS_CERTDIR: ""
|
||||
script:
|
||||
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | tr wl v)
|
||||
- docker build -t $REPO/$PROD_NAME_AIHIT:$IMAGE_VERSION -t $REPO/$PROD_NAME_AIHIT:latest -t $PROD_NAME_AIHIT:$IMAGE_VERSION -t $PROD_NAME_AIHIT:latest -f PARR.Worker/Dockerfile .
|
||||
- docker login -u $NEXUS_PUSH_USER -p $NEXUS_PUSH_PASS $REPO
|
||||
- docker push --all-tags $REPO/$PROD_NAME_AIHIT
|
||||
tags:
|
||||
- docker
|
||||
|
||||
|
||||
prod_aihit_deploy:
|
||||
stage: deploy
|
||||
environment:
|
||||
name: parr-aihit-syncher
|
||||
only:
|
||||
- /^as[0-9]+\.[0-9]+\.[0-9]+$/
|
||||
except:
|
||||
- branches
|
||||
script:
|
||||
- IMAGE_VERSION=$(echo $CI_COMMIT_TAG | tr as v)
|
||||
- tag=$IMAGE_VERSION docker compose -f docker-compose.aihit-syncher.yml up -d
|
||||
parallel:
|
||||
matrix:
|
||||
- RUNNER: shell-as-1
|
||||
tags:
|
||||
- ${RUNNER}
|
||||
|
||||
Reference in New Issue
Block a user