diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b03195fb721174830181b2a94bad6323f97beb20..e540e63441d6657cd942ae7d0522cd16af87447c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,17 +2,29 @@ variables: GIT_SUBMODULE_STRATEGY: recursive stages: - - docker + - build -docker: - stage: docker +build: + stage: build image: docker + tags: - docker + + rules: + # If triggered by a push to the default branch... + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH + variables: + VERSION: "latest" # ...push to latest... + changes: + - Dockerfile # ...only if Dockerfile changed + + # If triggered by tag creation... + - if: $CI_COMMIT_TAG + variables: + VERSION: $CI_COMMIT_TAG # ...push to tag name + script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker build -t $CI_REGISTRY_IMAGE:latest . - - docker push $CI_REGISTRY_IMAGE:latest - rules: - - changes: - - Dockerfile + - docker build -t $CI_REGISTRY_IMAGE:$VERSION . + - docker push $CI_REGISTRY_IMAGE:$VERSION