无法在jenkins中使用变量参数调用远程参数化作业。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法在jenkins中使用变量参数调用远程参数化作业。相关的知识,希望对你有一定的参考价值。
我正在使用jenkins声明式管道调用远程参数化作业。以下是脚本。
def svnRevision
def esmBuildVerison
pipeline {
agent any
stages {
stage('SVN Checkout') {
steps {
echo 'SVN Checkout'
script {
svnCheckout = checkout([$class: 'SubversionSCM',
additionalCredentials: [],
excludedCommitMessages: '',
excludedRegions: '',
excludedRevprop: '',
excludedUsers: '',
filterChangelog: false,
ignoreDirPropChanges: false,
includedRegions: '',
locations: [[cancelProcessOnExternalsFail: true,
credentialsId: 'xyz',
depthOption: 'infinity',
ignoreExternalsOption: true,
local: '.',
remote: 'svn url']],
quietOperation: true,
workspaceUpdater: [$class: 'UpdateUpdater']])
svnRevision = svnCheckout.SVN_REVISION
echo svnRevision
esmBuildVerison = "4.28.${BUILD_NUMBER}.${svnCheckout.SVN_REVISION}"
echo esmBuildVerison
}
}
}
stage('Building Code + Sonar Analysis') {
steps {
//building project
}
}
stage('Calling test Smoke Suite') {
when {
expression {
return currentBuild.result != 'FAILURE'
}
}
steps {
echo 'executing smoke suite'
triggerRemoteJob enhancedLogging: true, job: 'Smoke Suite', maxConn: 1, parameters: 'DevelopmentVersion=4.28.${BUILD_NUMBER}.${svnCheckout.SVN_REVISION}', pollInterval: 100, remoteJenkinsUrl: 'url', token: 'token', useCrumbCache: true, useJobInfoCache: true
}
}
}
这里,当我在 triggerRemoteJob 的参数'DevelopmentVersion'中传递 4.28.${BUILD_NUMBER}.${svnCheckout.SVN_REVISION} 时,它被评估为 4.28.70.${svnCheckout.SVN_REVISION}。但是我需要发送svn版本号给远程作业,但是 triggerRemoteJob并没有评估${svnCheckout.SVN_REVISION},而是评估${BUILD_NUMBER}。
我尝试了许多组合,但都是徒劳的。任何关于这个问题的帮助都将被感激。
以上是关于无法在jenkins中使用变量参数调用远程参数化作业。的主要内容,如果未能解决你的问题,请参考以下文章