diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d708e99..13b1d58 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,29 +2,38 @@ # See https://docs.gitlab.com/ee/user/application_security/sast/#customizing-the-sast-settings # Note that environment variables can be set in several places # See https://docs.gitlab.com/ee/ci/variables/#priority-of-environment-variables -image: docker:18.09.7-dind -services: -- docker:18.09.7-dind -variables: - DOCKER_DRIVER: overlay - DOCKER_HOST: tcp://localhost:2375/ - IMAGE_TAG: "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" - FF_GITLAB_REGISTRY_HELPER_IMAGE: 1 + stages: - test - build - push_local - push_dockerhub -before_script: -- docker version -- docker info -- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + +.docker_base: + image: docker:18.09.7-dind + services: + - docker:18.09.7-dind + variables: + DOCKER_DRIVER: overlay + DOCKER_HOST: tcp://localhost:2375/ + IMAGE_TAG: "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" + FF_GITLAB_REGISTRY_HELPER_IMAGE: 1 + before_script: + - docker version + - docker info + - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + build: + extends: + - .docker_base stage: build script: - docker build --tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA ./Docker/ - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA + push local: + extends: + - .docker_base stage: push_local variables: GIT_STRATEGY: none @@ -34,7 +43,10 @@ push local: - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA - docker tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA $CI_REGISTRY_IMAGE:latest - docker push $CI_REGISTRY_IMAGE:latest + push dockerhub: + extends: + - .docker_base stage: push_dockerhub variables: GIT_STRATEGY: none @@ -47,6 +59,7 @@ push dockerhub: - docker tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA $CI_DOCKERHUB_IMAGE:latest - docker login -u "$CI_DOCKERHUB_USER" -p "$CI_DOCKERHUB_PASSWORD" $CI_DOCKERHUB_REGISTRY - docker push $CI_DOCKERHUB_IMAGE:latest + sast: stage: test include: