From e74e5507b46d01b6b87b6aa0888fbde33a7d2dee Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Thu, 28 Nov 2024 17:26:20 +0100 Subject: [PATCH] OZG-6923 add commitId to feature branch image tag/helm version --- Jenkinsfile | 39 +++++++++++++++++---------------------- 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 32da7e8..b55ff85 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -138,7 +138,7 @@ pipeline { steps { script { FAILED_STAGE=env.STAGE_NAME - IMAGE_TAG = generateImageTag() + IMAGE_TAG = buildVersionName() tagAndPushDockerImage(IMAGE_TAG) @@ -157,7 +157,7 @@ pipeline { steps { script { FAILED_STAGE=env.STAGE_NAME - HELM_CHART_VERSION = generateHelmChartVersion() + HELM_CHART_VERSION = buildVersionName() dir('fachstelle-server') { sh "./run_helm_test.sh" } @@ -209,7 +209,7 @@ pipeline { stage ('Deploy SBOM to DependencyTrack') { steps { script { - IMAGE_TAG = generateImageTag() + IMAGE_TAG = buildVersionName() configFileProvider([configFile(fileId: 'maven-settings', variable: 'MAVEN_SETTINGS')]) { withCredentials([string(credentialsId: 'dependency-track-api-key', variable: 'API_KEY')]) { @@ -258,17 +258,22 @@ Void deployHelmChart(String helmChartVersion) { } } -String generateHelmChartVersion() { - def chartVersion = getPomVersion('pom.xml') - - if (env.BRANCH_NAME == 'master') { - chartVersion += "-${env.GIT_COMMIT.take(7)}" - } - else if (env.BRANCH_NAME != 'release') { - chartVersion += "-${env.BRANCH_NAME}" +String validateBranchName(branchName) { + int maxLength = 30 + 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 chartVersion.replaceAll("_", "-") +String buildVersionName() { + if (env.BRANCH_NAME == 'release') { + return getPomVersion('pom.xml') + } + return "${getPomVersion('pom.xml')}-${validateBranchName(env.BRANCH_NAME)}-${env.GIT_COMMIT.take(7)}".replaceAll("_", "-") } Void tagAndPushDockerImage(String newTag){ @@ -286,16 +291,6 @@ String getPomVersion(String pomFile){ return pom.version } -String generateImageTag() { - def imageTag = "${env.BRANCH_NAME}-${getPomVersion('pom.xml')}" - - if (env.BRANCH_NAME == 'master') { - imageTag += "-${env.GIT_COMMIT.take(7)}" - } - - return imageTag -} - Void configureGit() { final email = "jenkins@ozg-sh.de" final name = "jenkins" -- GitLab