From 2af9f153a9ccdd3a9d67f114a939c5f5923e2999 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20Betto?= <niccolo.betto@skywarder.eu> Date: Thu, 5 Dec 2024 23:13:26 +0000 Subject: [PATCH] Introduce versioned CI build based on tags --- .gitlab-ci.yml | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b03195f..e540e63 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 -- GitLab