From 57e18ef24a35c55bd53b3a80566640c1b139e9e4 Mon Sep 17 00:00:00 2001 From: Shaka Date: Thu, 9 Aug 2018 11:17:40 +0200 Subject: [PATCH] Refacto CI Add 2 pipelines : one for test and one for prod Add 2 stages : build and deploy Use gitlab features to deduplicate code (general before-script, variables, yaml expansion) --- .gitlab-ci.yml | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3586600..d1e370b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,15 +2,36 @@ image: docker services: - docker:dind +before_script: +- apk add --no-cache curl +- docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN gitlab.rezometz.org:5678 + stages: - build +- deploy -build_job: +.build_image: &build_image stage: build script: - - apk add --no-cache curl - - docker build -f Dockerfile -t gitlab.rezometz.org:5678/klafyvel/klafirc . - - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN gitlab.rezometz.org:5678 + - docker build -f Dockerfile -t gitlab.rezometz.org:5678/klafyvel/klafirc:$CI_COMMIT_SHA . + +build_image_test: + <<: *build_image + stage: build + except: master + after_script: + - echo "test: CI_REGISTRY_IMAGE" + +build_image_prod: + <<: *build_image + stage: build + after_script: + - docker tag gitlab.rezometz.org:5678/klafyvel/klafirc:$CI_COMMIT_SHA gitlab.rezometz.org:5678/klafyvel/klafirc:latest - docker push gitlab.rezometz.org:5678/klafyvel/klafirc:latest - - "curl -X POST lupercus.rez -d \"$API_VARS\" -H \"Content-Type: application/json\"" + only: master +deploy: + stage: deploy + script: + - "curl -X POST lupercus.rez -d \"$API_VARS\" -H \"Content-Type: application/json\"" + dependencies: build_image_prod \ No newline at end of file