fix: Switch CI to DAG
This commit is contained in:
parent
39ebe75e18
commit
bb7ebc3a42
1 changed files with 6 additions and 20 deletions
|
@ -1,8 +1,3 @@
|
|||
stages:
|
||||
- prebuild_and_test
|
||||
- tag
|
||||
- push_image
|
||||
|
||||
cache:
|
||||
paths:
|
||||
- _build
|
||||
|
@ -16,40 +11,31 @@ variables:
|
|||
DOCKER_TLS_CERTDIR: "/certs"
|
||||
DOCKER_HOST: tcp://docker:2376
|
||||
|
||||
prebuild:
|
||||
stage: prebuild_and_test
|
||||
image: docker:19.03.12
|
||||
services:
|
||||
- name: docker:19.03.12-dind
|
||||
script:
|
||||
- docker login "https://${CI_REGISTRY}" -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD
|
||||
- docker pull $CI_REGISTRY_IMAGE:latest || true
|
||||
- docker build --cache-from $CI_REGISTRY_IMAGE:latest -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
|
||||
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
|
||||
|
||||
test:
|
||||
stage: prebuild_and_test
|
||||
needs: []
|
||||
image: "elixir:1.10"
|
||||
services:
|
||||
- name: postgres:12
|
||||
script: script/cibuild
|
||||
|
||||
deploy_to_tags:
|
||||
stage: tag
|
||||
needs: ['test']
|
||||
image: "node:15.0"
|
||||
script:
|
||||
- npm install
|
||||
- npx semantic-release
|
||||
|
||||
deploy_to_registry:
|
||||
stage: push_image
|
||||
needs: ['test']
|
||||
image: "docker:19.03.12"
|
||||
services:
|
||||
- name: docker:19.03.12-dind
|
||||
only:
|
||||
- tags
|
||||
script:
|
||||
- docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
|
||||
- docker login "https://${CI_REGISTRY}" -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD
|
||||
- docker pull $CI_REGISTRY_IMAGE:latest || true
|
||||
- docker build --cache-from $CI_REGISTRY_IMAGE:latest -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
|
||||
- docker tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
|
||||
- docker tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA $CI_REGISTRY_IMAGE:latest
|
||||
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
|
||||
|
|
Loading…
Reference in a new issue