Skip to content
Snippets Groups Projects
Commit 43cbe28b authored by Lukas Malte Monnerjahn's avatar Lukas Malte Monnerjahn
Browse files

Merge branch 'fix-ci-latest-tag' into 'main'

Avoid unintentionally overwriting 'latest' image tag

See merge request !4
parents 1d37a283 f0c952d0
No related branches found
No related tags found
1 merge request!4Avoid unintentionally overwriting 'latest' image tag
Pipeline #1721 passed
...@@ -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:
......
...@@ -474,7 +474,7 @@ ...@@ -474,7 +474,7 @@
<artifactId>spring-boot-maven-plugin</artifactId> <artifactId>spring-boot-maven-plugin</artifactId>
<configuration> <configuration>
<image> <image>
<name>${CI_REGISTRY_IMAGE}/${project.artifactId}</name> <name>${CI_REGISTRY_IMAGE}:${PRIMARY_IMAGE_TAG}</name>
<tags>${IMAGE_TAGS}</tags> <tags>${IMAGE_TAGS}</tags>
<publish>true</publish> <publish>true</publish>
</image> </image>
...@@ -502,7 +502,7 @@ ...@@ -502,7 +502,7 @@
<artifactId>spring-boot-maven-plugin</artifactId> <artifactId>spring-boot-maven-plugin</artifactId>
<configuration> <configuration>
<image> <image>
<name>docker.ozg-sh.de/${project.artifactId}</name> <name>docker.ozg-sh.de/${project.artifactId}:${PRIMARY_IMAGE_TAG}</name>
<tags>${IMAGE_TAGS}</tags> <tags>${IMAGE_TAGS}</tags>
<publish>true</publish> <publish>true</publish>
</image> </image>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment