需要在groovy管道中基于releaseVersion增加补丁标签版本
我需要在groovy管道代码中增加基于releaseVersion的补丁版本 如果文件==构建清单/pp5/manifest.json 从清单中读取releaseVersion(例如1.2) 读取当前回购中的所有标签 根据发布版本增加补丁版本。 例如,所有标记都显示1.2.5的最新版本。阅读releaseVersion,如果为1.2,则将补丁版本增加到1.2.6。 -或- 如果回购协议版本为1.2.5,发行版本为1.3,则添加标签1.3.0 我已经编写了下面的代码来提取补丁标签版本和发布版本,但是我们如何在groovy中增加它呢需要在groovy管道中基于releaseVersion增加补丁标签版本,groovy,jenkins-pipeline,jenkins-groovy,Groovy,Jenkins Pipeline,Jenkins Groovy,我需要在groovy管道代码中增加基于releaseVersion的补丁版本 如果文件==构建清单/pp5/manifest.json 从清单中读取releaseVersion(例如1.2) 读取当前回购中的所有标签 根据发布版本增加补丁版本。 例如,所有标记都显示1.2.5的最新版本。阅读releaseVersion,如果为1.2,则将补丁版本增加到1.2.6。 -或- 如果回购协议版本为1.2.5,发行版本为1.3,则添加标签1.3.0 我已经编写了下面的代码来提取补丁标签版本和发布版本,但
agent {
node {
label 'allinone'
}
}
stages {
stage('Get git tags') {
steps {
checkout([
$class: 'GitSCM',
branches: [[name: "*/master"]],
doGenerateSubmoduleConfigurations: false,
extensions: [[
$class: 'RelativeTargetDirectory',
relativeTargetDir: "${WORKSPACE}"
]],
submoduleCfg: [],
userRemoteConfigs: [[
credentialsId: 'bitbucket-jenkins',
url: "${repo}"
]]
])
}
}
stage('Get upstream branches') {
steps {
script {
dir("${WORKSPACE}") {
sh """
pwd
ls
git for-each-ref --sort=-taggerdate --format '%(tag)' refs/tags
"""
}
}
}
}
stage('Verifying manifest file'){
steps {
sh """
if [ -f manifest.json ]; then echo "File Exist"; fi
export releaseVersion=\$(jq -c .app.releaseVersion manifest.json | sed 's/\"/\\\\\"/g')
"""
}
}
}
}```