feat: add a new workflow triggered by pushing a new git tag

This commit is contained in:
Dawid Wysokiński 2021-07-08 07:06:18 +02:00
parent 598dd62dd0
commit 4c6ce8f1e6

View File

@ -1,6 +1,6 @@
version: 2 version: 2
jobs: jobs:
build: build_latest:
docker: docker:
- image: circleci/golang:1.16 - image: circleci/golang:1.16
working_directory: ~/twhelpapi working_directory: ~/twhelpapi
@ -13,16 +13,39 @@ jobs:
docker login -u $DOCKER_LOGIN -p $DOCKER_PASSWORD docker login -u $DOCKER_LOGIN -p $DOCKER_PASSWORD
# build the application image # build the application image
- run: docker build -t $DOCKER_LOGIN/twhelp-api:latest . - run: docker build -t $DOCKER_LOGIN/twhelp-api:latest .
# deploy the image # deploy the image
- run: docker push $DOCKER_LOGIN/twhelp-api:latest - run: docker push $DOCKER_LOGIN/twhelp-api:latest
build_version:
docker:
- image: circleci/golang:1.16
working_directory: ~/twhelpapi
steps:
- checkout
- setup_remote_docker
# start proprietary DB using private Docker image
# with credentials stored in the UI
- run: |
docker login -u $DOCKER_LOGIN -p $DOCKER_PASSWORD
# build the application image
- run: docker build -t $DOCKER_LOGIN/twhelp-api:$(echo $CIRCLE_TAG | sed -r 's/^.{1}//') .
# deploy the image
- run: docker push $DOCKER_LOGIN/twhelp-api:$(echo $CIRCLE_TAG | sed -r 's/^.{1}//')
workflows: workflows:
version: 2 version: 2
deploy_prod: deploy_latest:
jobs: jobs:
- build: - build_latest:
context: TWHelp context: TWHelp
filters: filters:
branches: branches:
only: only:
- master - master
deploy_version:
jobs:
- build_version:
context: TWHelp
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/