如何从传递不同参数的构建流程中调用构建流程? [英] How to call a build flow from a build flow passing different parameters?
问题描述
我有3个Jobs(将其命名为job1,job2,job3),它们都接受相同的参数.我有一个叫这些工作的工作流程 例如构建流程::
I have 3 Jobs (let's name it as job1,job2,job3) which all accepts same parameters. I have a build flow calling these jobs Eg Build Flow::
build(job1, param1 : "value1", param2 : "value2" )
build(job2, param1 : "value1", param2 : "value2" )
build(job3, param1 : "value1", param2 : "value2" )
如您在示例中看到的,所有作业均接受相同的参数.
As you see in the example all the jobs accept same parameters.
我想在构建流程(job1,job2,job3)中使用不同的参数值运行相同的序列. 所以现在我有不同的构建流程来将不同的值传递给参数:
And I want to run the same sequence in the build flow (job1, job2, job3) with different parameter values. So Now I am having different build flows to pass different values to the parameter:
例如:
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" )
我正在考虑建立一个共享的构建流程,并能够将参数传递给它 喜欢 : 示例:::
I am thinking to have a build flow as shared and able to pass parameters to it like : Example:::
Build flow
build(job1, param1 : $paramvalue1, param2 : $paramvalue2 )
build(job2, param1 : $paramvalue1, param2 : $paramvalue2 )
build(job3, param1 : $paramvalue1, param2 : $paramvalue2 )
我想用与另一个构建流程不同的参数值来调用该构建流程.
And I want to call this build flow with different parameter values from another build flow.
我可以这样做吗???如果是 ,, 1.如何定义参数并将其传递给流程?
Can I do that ??? If yes ,, 1. How to define and pass parameter to the flow ?
推荐答案
您可以使用工作流插件来实现所需的功能.
You can use Workflow Plugin to achieve what you want.
-
必须将
-
job1
,job2
和job3
设置为参数化的作业,并以param1
和param2
作为参数(它们可以是自由式作业,也可以是您想要的任何作业). -
以
param1
和param2
作为参数创建参数化的工作流作业.工作流脚本将是这样的:
job1
,job2
andjob3
must be parameterized jobs withparam1
andparam2
as parameters (they can be freestyle jobs or whatever you want).Create a parameterized Workflow job with
param1
andparam2
as parameters. The workflow script would be something like this:
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]]
然后仅运行顶级作业,它将询问您参数值,并且将触发下游作业(并传递了顶级参数).
Then just run the top level job, it will ask you for parameters values and downstream jobs will be triggered (and top level parameters passed).
这篇关于如何从传递不同参数的构建流程中调用构建流程?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!