如何从传递不同参数的构建流程中调用构建流程? [英] How to call a build flow from a build flow passing different parameters?

查看:95
本文介绍了如何从传递不同参数的构建流程中调用构建流程?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有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.

    必须将
  1. job1job2job3设置为参数化的作业,并以param1param2作为参数(它们可以是自由式作业,也可以是您想要的任何作业).
  2. param1param2作为参数创建参数化的工作流作业.工作流脚本将是这样的:

  1. job1, job2 and job3 must be parameterized jobs with param1 and param2 as parameters (they can be freestyle jobs or whatever you want).
  2. Create a parameterized Workflow job with param1 and param2 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屋!

  • 查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆