2

我希望能够将 List 变量传递给 Jenkinsfile 中的 Build 命令,例如:

stage('test') {
  def listName = []
  build job: "/job/jobname", parameters: listName, propagate: false
}

当我尝试这样的事情时,我得到一个错误:

hudson.model.PasswordParameterValue~PasswordParameterValue(名称:字符串,值:字符串,描述:字符串)}[],传播?:布尔,安静期?:整数,等待?:布尔):java.lang.ClassCastException:类org.jenkinsci .plugins.workflow.support.steps.build.BuildTriggerStep.setParameters() 期望 java.util.List 但收到类 java.lang.String

4

2 回答 2

2

能够通过使用以下代码来解决这个问题:

stage('test') {
   def listName = []
   listName .add([$class: 'StringParameterValue', name: "${listKey}", value: "${list.value}"])
   build job: "/job/jobname", parameters: listName, propagate: false
}
于 2019-10-24T15:41:49.910 回答
0

你应该传递Mapparameters

stage('test') {
  def listName = [string(name: 'PARAM_NAME', value: "PARAM_VALUE")]
  build job: "/job/jobname", parameters: listName, propagate: false
}
于 2019-08-29T20:02:46.627 回答