将地图添加到jenkins构建流程插件中作为参数

时间:2015-05-04 14:52:43

标签: groovy jenkins jenkins-build-flow

我对jenkins构建流程插件有疑问。

在构建流程dsl中有一个名为params的默认值,它看起来像一个地图。

我想要做的是将此地图传递给我想要稍后构建的作业,但是,构建流程不接受地图作为参数。 例如:
build(“test_job”,params)

我知道的最愚蠢的方法就是逐个粘贴所有这些,比如build(“test_job”,“Key1”:params [1],“key2”:“params [2]”)

对于这种情况有更好的想法吗?

BR,

3 个答案:

答案 0 :(得分:1)

订单是关键! 你可以这样做(至少它对我有用),使用参数图作为第一个参数:

job_params = [:]
job_params['BRANCH'] = 'The Branch Name'

build( job_params, 'pipelinetester' )

它有效!

答案 1 :(得分:0)

试试这个方法

val refService = url("http://url//)
val response = Http(refService OK dispatch.as.json4s.Json)
var checkVal :Boolean = true
val json = Await.result(response, 30 seconds)

val data = json \ "data"

示例:

在您的情况下,如果您使用名称作为参数和您的值" abc" 然后使用

for {
  JObject(obj) <- data
 JField("nameValue", JString(t)) <- obj //nameValue is the column name in the returned data
  } yield {checkVal= if (t == name){ break }
 else 
   true
  }

答案 2 :(得分:0)

您可以通过从项目1归档地图并使用此插件复制它来执行此操作: https://wiki.jenkins-ci.org/display/JENKINS/Copy+Artifact+Plugin

或者您可以使用插件使用共享文件夹: https://wiki.jenkins-ci.org/display/JENKINS/CopyArchiver+Plugin