我有3个作业(我们将其命名为job1,job2,job3),它们都接受相同的参数。我有一个构建流程来调用这些工作 例如Build Flow ::
build(job1, param1 : "value1", param2 : "value2" )
build(job2, param1 : "value1", param2 : "value2" )
build(job3, param1 : "value1", param2 : "value2" )
正如您在示例中看到的,所有作业都接受相同的参数。
我想在构建流程(job1,job2,job3)中使用不同的参数值运行相同的序列。 所以现在我有不同的构建流程来将不同的值传递给参数:
例如:
Build flow1---
build(job1, param1 : "value1", param2 : "value2" )
build(job2, param1 : "value1", param2 : "value2" )
build(job3, param1 : "value1", param2 : "value2" )
Build flow2---
build(job1, param1 : "value3", param2 : "value4" )
build(job2, param1 : "value3", param2 : "value4" )
build(job3, param1 : "value3", param2 : "value4" )
我正在考虑将构建流程作为共享并且能够将参数传递给它 喜欢 : 实施例:::
Build flow
build(job1, param1 : $paramvalue1, param2 : $paramvalue2 )
build(job2, param1 : $paramvalue1, param2 : $paramvalue2 )
build(job3, param1 : $paramvalue1, param2 : $paramvalue2 )
我想用另一个构建流程中的不同参数值来调用此构建流程。
我能这样做吗?如是 ,, 1.如何定义并将参数传递给流程?
答案 0 :(得分:1)
您可以使用Workflow Plugin来实现您的目标。
job1
,job2
和job3
必须是参数化作业,param1
和param2
作为参数(它们可以是自由式作业或任何您想要的)。 使用param1
和param2
作为参数创建参数化工作流作业。工作流脚本将是这样的:
build job: 'job1', parameters:
[[$class: 'StringParameterValue', name: 'param1', value: param1],
[$class: 'StringParameterValue', name: 'param2', value: param2]]
build job: 'job2', parameters:
[[$class: 'StringParameterValue', name: 'param1', value: param1],
[$class: 'StringParameterValue', name: 'param2', value: param2]]
build job: 'job3', parameters:
[[$class: 'StringParameterValue', name: 'param1', value: param1],
[$class: 'StringParameterValue', name: 'param2', value: param2]]
然后只运行顶级作业,它会询问您参数值,并触发下游作业(并传递顶级参数)。