55 lines
1.1 KiB
YAML
55 lines
1.1 KiB
YAML
stages:
|
|
- build
|
|
- deploy-dev
|
|
- deploy-prod
|
|
|
|
build:
|
|
stage: build
|
|
tags:
|
|
- demo
|
|
before_script:
|
|
- docker login -u mathwave -p $DOCKERHUB_PASSWORD
|
|
script:
|
|
- docker build -t mathwave/sprint-repo:sprint .
|
|
- docker push mathwave/sprint-repo:sprint
|
|
|
|
.deploy:
|
|
before_script:
|
|
- docker login -u mathwave -p $DOCKERHUB_PASSWORD
|
|
|
|
deploy-dev:
|
|
extends:
|
|
- .deploy
|
|
stage: deploy-dev
|
|
tags:
|
|
- demo
|
|
rules:
|
|
- if: '$CI_COMMIT_BRANCH == "master"'
|
|
when: on_success
|
|
- when: manual
|
|
variables:
|
|
PORT: 80
|
|
DB_PASSWORD: "$DB_PASSWORD_DEMO"
|
|
DEBUG: "true"
|
|
TELEGRAM_TOKEN: "$TELEGRAM_TOKEN_DEMO"
|
|
script:
|
|
- docker stack deploy -c ./.deploy/deploy-dev.yaml sprint
|
|
|
|
deploy-prod:
|
|
extends:
|
|
- .deploy
|
|
stage: deploy-prod
|
|
tags:
|
|
- main
|
|
only:
|
|
- master
|
|
when: manual
|
|
variables:
|
|
PORT: 80
|
|
DB_PASSWORD: "$DB_PASSWORD_PROD"
|
|
TELEGRAM_TOKEN: "$TELEGRAM_TOKEN_PROD"
|
|
script:
|
|
- docker stack deploy -c ./.deploy/deploy-prod.yaml sprint
|
|
- docker build -t mathwave/sprint-runner .
|
|
- docker push mathwave/sprint-runner
|