core/.gitlab-ci.yml
2024-03-13 21:23:46 +03:00

67 lines
2.3 KiB
YAML

include:
- project: "devops/pena-continuous-integration"
file: "/templates/docker/build-template.gitlab-ci.yml"
- project: "devops/pena-continuous-integration"
file: "/templates/docker/deploy-template.gitlab-ci.yml"
stages:
- build
- deploy
build-app:
stage: build
extends: .build_template
rules:
- if: "$CI_COMMIT_BRANCH == $STAGING_BRANCH || $CI_COMMIT_BRANCH == $PRODUCTION_BRANCH"
script:
- docker build -t $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-core:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID --build-arg GITLAB_TOKEN=$GITLAB_TOKEN $CI_PROJECT_DIR
- docker push $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-core:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID
build-storer:
stage: build
extends: .build_template
rules:
- if: "$CI_COMMIT_BRANCH == $STAGING_BRANCH || $CI_COMMIT_BRANCH == $PRODUCTION_BRANCH"
script:
- docker build -t $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-storer:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID --build-arg GITLAB_TOKEN=$GITLAB_TOKEN $CI_PROJECT_DIR -f ./storer/Dockerfile
- docker push $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-storer:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID
build-worker:
stage: build
extends: .build_template
rules:
- if: "$CI_COMMIT_BRANCH == $STAGING_BRANCH || $CI_COMMIT_BRANCH == $PRODUCTION_BRANCH"
script:
- docker build -t $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-worker:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID --build-arg GITLAB_TOKEN=$GITLAB_TOKEN $CI_PROJECT_DIR -f ./worker/Dockerfile
- docker push $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-worker:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID
build-answerer:
stage: build
extends: .build_template
rules:
- if: "$CI_COMMIT_BRANCH == $STAGING_BRANCH || $CI_COMMIT_BRANCH == $PRODUCTION_BRANCH"
script:
- docker build -t $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-answerer:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID --build-arg GITLAB_TOKEN=$GITLAB_TOKEN $CI_PROJECT_DIR -f ./answerer/Dockerfile
- docker push $CI_REGISTRY_IMAGE/$CI_COMMIT_BRANCH-answerer:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID
deploy-staging:
stage: deploy
tags:
- staging
extends: .deploy_template
rules:
- if: "$CI_COMMIT_BRANCH == $STAGING_BRANCH"
after_script:
- ls
deploy-prod:
stage: deploy
tags:
- prod
extends: .deploy_template
rules:
- if: "$CI_COMMIT_BRANCH == $PRODUCTION_BRANCH"
after_script:
- ls