39 lines
1.1 KiB
YAML
39 lines
1.1 KiB
YAML
stages:
|
|
- 🤞 test
|
|
- 🤞 test docker build
|
|
- 🚀 publish
|
|
|
|
test:
|
|
stage: 🤞 test
|
|
script:
|
|
- python3 -m unittest
|
|
|
|
test-docker-build:
|
|
stage: 🤞 test docker build
|
|
image: docker:latest
|
|
services:
|
|
- docker:dind
|
|
before_script:
|
|
- apk add jq curl
|
|
script:
|
|
- TERRAFORM_VERSION=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r -M '.current_version')
|
|
- docker build --pull -t "$CI_REGISTRY_IMAGE:$TERRAFORM_VERSION" .
|
|
except:
|
|
- master
|
|
|
|
publish:
|
|
stage: 🚀 publish
|
|
image: docker:latest
|
|
services:
|
|
- docker:dind
|
|
before_script:
|
|
- apk add jq curl
|
|
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
|
script:
|
|
- TERRAFORM_VERSION=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r -M '.current_version')
|
|
- docker build --pull -t "$CI_REGISTRY_IMAGE:$TERRAFORM_VERSION" .
|
|
- docker build --pull -t "$CI_REGISTRY_IMAGE" .
|
|
- docker push "$CI_REGISTRY_IMAGE:$TERRAFORM_VERSION"
|
|
- docker push "$CI_REGISTRY_IMAGE"
|
|
only:
|
|
- master
|