Skip to content
Snippets Groups Projects

Avoid unintentionally overwriting 'latest' image tag

Merged Lukas Malte Monnerjahn requested to merge fix-ci-latest-tag into main
2 files
+ 14
6
Compare changes
  • Side-by-side
  • Inline
Files
2
+ 12
4
@@ -60,13 +60,16 @@ verify:
@@ -60,13 +60,16 @@ verify:
- export PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout $MAVEN_CLI_OPTS | cut -d'-' -f1)
- export PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout $MAVEN_CLI_OPTS | cut -d'-' -f1)
- export PROJECT_ARTIFACTID=$(mvn help:evaluate -Dexpression=project.artifactId -q -DforceStdout $MAVEN_CLI_OPTS)
- export PROJECT_ARTIFACTID=$(mvn help:evaluate -Dexpression=project.artifactId -q -DforceStdout $MAVEN_CLI_OPTS)
- export NEXUS_IMAGE_PREFIX="docker.ozg-sh.de/${PROJECT_ARTIFACTID}"
- export NEXUS_IMAGE_PREFIX="docker.ozg-sh.de/${PROJECT_ARTIFACTID}"
 
- export MERGE_REQUEST_TAG="${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}"
 
- export SNAPSHOT_TAG="${PROJECT_VERSION}-${CI_COMMIT_BRANCH}"
# Merge request jobs
# Merge request jobs
push-merge-request-image-gitlab:
push-merge-request-image-gitlab:
stage: publish
stage: publish
extends: .get-version
extends: .get-version
script:
script:
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID},${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}-${CI_COMMIT_SHORT_SHA}"
- export PRIMARY_IMAGE_TAG=${MERGE_REQUEST_TAG}
 
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${MERGE_REQUEST_TAG},${CI_REGISTRY_IMAGE}:${MERGE_REQUEST_TAG}-${CI_COMMIT_SHORT_SHA}"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
@@ -76,7 +79,8 @@ push-merge-request-image-nexus:
@@ -76,7 +79,8 @@ push-merge-request-image-nexus:
stage: publish
stage: publish
extends: .get-version
extends: .get-version
script:
script:
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID},${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}-${CI_COMMIT_SHORT_SHA}"
- export PRIMARY_IMAGE_TAG=${MERGE_REQUEST_TAG}
 
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${MERGE_REQUEST_TAG},${NEXUS_IMAGE_PREFIX}:${MERGE_REQUEST_TAG}-${CI_COMMIT_SHORT_SHA}"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
@@ -118,7 +122,8 @@ push-snapshot-image-gitlab:
@@ -118,7 +122,8 @@ push-snapshot-image-gitlab:
stage: publish
stage: publish
extends: .get-version
extends: .get-version
script:
script:
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-main,${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-main-${CI_COMMIT_SHORT_SHA},${CI_REGISTRY_IMAGE}:snapshot-latest"
- export PRIMARY_IMAGE_TAG=${SNAPSHOT_TAG}
 
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${SNAPSHOT_TAG},${CI_REGISTRY_IMAGE}:${SNAPSHOT_TAG}-${CI_COMMIT_SHORT_SHA},${CI_REGISTRY_IMAGE}:snapshot-latest"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
only:
only:
- main
- main
@@ -127,7 +132,8 @@ push-snapshot-image-nexus:
@@ -127,7 +132,8 @@ push-snapshot-image-nexus:
stage: publish
stage: publish
extends: .get-version
extends: .get-version
script:
script:
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-main,${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-main-${CI_COMMIT_SHORT_SHA},${NEXUS_IMAGE_PREFIX}:snapshot-latest"
- export PRIMARY_IMAGE_TAG=${SNAPSHOT_TAG}
 
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${SNAPSHOT_TAG},${NEXUS_IMAGE_PREFIX}:${SNAPSHOT_TAG}-${CI_COMMIT_SHORT_SHA},${NEXUS_IMAGE_PREFIX}:snapshot-latest"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
only:
only:
- main
- main
@@ -156,6 +162,7 @@ push-release-image-gitlab:
@@ -156,6 +162,7 @@ push-release-image-gitlab:
extends: .get-version
extends: .get-version
script:
script:
- mvn versions:set -DnewVersion=${CI_COMMIT_TAG} $MAVEN_CLI_OPTS
- mvn versions:set -DnewVersion=${CI_COMMIT_TAG} $MAVEN_CLI_OPTS
 
- export PRIMARY_IMAGE_TAG=${CI_COMMIT_TAG}
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG},${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}-release,${CI_REGISTRY_IMAGE}:latest"
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG},${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}-release,${CI_REGISTRY_IMAGE}:latest"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
rules:
@@ -166,6 +173,7 @@ push-release-image-nexus:
@@ -166,6 +173,7 @@ push-release-image-nexus:
extends: .get-version
extends: .get-version
script:
script:
- mvn versions:set -DnewVersion=${CI_COMMIT_TAG} $MAVEN_CLI_OPTS
- mvn versions:set -DnewVersion=${CI_COMMIT_TAG} $MAVEN_CLI_OPTS
 
- export PRIMARY_IMAGE_TAG=${CI_COMMIT_TAG}
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${CI_COMMIT_TAG},${NEXUS_IMAGE_PREFIX}:${CI_COMMIT_TAG}-release,${NEXUS_IMAGE_PREFIX}:latest"
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${CI_COMMIT_TAG},${NEXUS_IMAGE_PREFIX}:${CI_COMMIT_TAG}-release,${NEXUS_IMAGE_PREFIX}:latest"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
rules:
Loading