From 9c5534fbe3fa7485e2ba86a2b1915d0aefb734db Mon Sep 17 00:00:00 2001 From: Martin <git@mail.de> Date: Wed, 12 Mar 2025 19:00:34 +0100 Subject: [PATCH] OZG-7922 adjust image tag generation --- Jenkinsfile | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 186f623..0e19e18 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -80,7 +80,7 @@ pipeline { steps { script { FAILED_STAGE=env.STAGE_NAME - JAR_TAG = getPomVersion('pom.xml').replace("SNAPSHOT", "${env.BRANCH_NAME}-SNAPSHOT") + JAR_TAG = getPomVersion().replace("SNAPSHOT", "${env.BRANCH_NAME}-SNAPSHOT") } configFileProvider([configFile(fileId: 'maven-settings', variable: 'MAVEN_SETTINGS')]) { sh "mvn -s $MAVEN_SETTINGS versions:set -DnewVersion=${JAR_TAG} -DprocessAllModules=true" @@ -166,7 +166,7 @@ pipeline { steps { script { FAILED_STAGE=env.STAGE_NAME - HELM_CHART_VERSION = generateHelmChartVersion() + HELM_CHART_VERSION = generateImageTag(); testAndDeployKeycloakHelmChart(HELM_CHART_VERSION) } @@ -177,7 +177,7 @@ pipeline { steps { script { FAILED_STAGE=env.STAGE_NAME - HELM_CHART_VERSION = generateHelmChartVersion() + HELM_CHART_VERSION = generateImageTag() testAndDeployElasticsearchHelmChart(HELM_CHART_VERSION) } @@ -259,19 +259,6 @@ String getHelmRepoUrl(){ return "https://nexus.ozg-sh.de/service/rest/v1/components?repository=ozg-base-apps-snapshot" } -String generateHelmChartVersion() { - def chartVersion = getPomVersion('pom.xml') - - if (isMainBranch()) { - chartVersion += "-${env.GIT_COMMIT.take(7)}" - } - else if (!isReleaseBranch()) { - chartVersion += "-${env.BRANCH_NAME}" - } - - return chartVersion.replaceAll('_', '-') -} - Boolean isMainBranch() { return env.BRANCH_NAME == 'main' } @@ -370,20 +357,33 @@ Void tagAndPushDockerImage(String imageName, String newTag){ } } -String getPomVersion(String pomFile){ - def pom = readMavenPom file: pomFile +String generateImageTag() { + if (isReleaseBranch()) { + return getPomVersion() + } + + return "${getPomVersion()}-${validateBranchName(env.BRANCH_NAME)}${getCommitHash()}".replaceAll("_", "-") +} + +String getPomVersion(){ + def pom = readMavenPom file: 'pom.xml' return pom.version } -String generateImageTag() { - def imageTag = "${env.BRANCH_NAME}-${getPomVersion('pom.xml')}" - - if (env.BRANCH_NAME == 'main') { - imageTag += "-${env.GIT_COMMIT.take(7)}" +String validateBranchName(branchName) { + int maxLength = 20 + if (branchName.length() > maxLength) { + String originalBranchName = branchName + branchName = branchName.substring(0, maxLength) + echo "WARNING: Branch name '${originalBranchName}' exceeded ${maxLength} characters. " + + "It has been truncated to '${branchName}' for deployment purposes." } + return branchName +} - return imageTag +String getCommitHash() { + return "-${env.GIT_COMMIT.take(7)}"; } String getParentPomVersion(String filePath) { -- GitLab