我有Jenkins Pipeline,它可以触发不同的项目。然而,所有管道的唯一区别只是名称。因此,我在jenkins的parameter中添加了一个参数${project},并为其分配了项目名称的值。
我们有很多项目,我正在努力找到一个更好的方法来实现这一目标。
我在想,我们怎样才能让所有的项目都用不同的参数运行,而不用在jenkins下创建不同的项目。
我贴一些截图,让你明白我到底想达到什么目的。
正如这里提到的,这是一个radioserver项目,有一个管道,其中有${project}。
如何从单个jenkins作业中为{project}赋予给予多个值?如果您有任何疑问,请给我留言或添加评论。
你可以看到我创建的这两个项目,它的所有内容都是一样的,只是参数化的值不同,我在想我如何能给那个参数给予不同的值。
正如你所看到的,这两个镜像的默认值是radioserver,nrcuup。我怎样才能把它们合并组合起来,使它们无故障地运行呢?
1条答案
按热度按时间3bygqnnd1#
我希望这会有所帮助。让我知道,如果在回答需要任何变化.
您可以在Jenkins中使用条件。根据${PROJECT}的值,您可以执行特定的阶段。
下面是一个简单的管道示例,我已经给出了选择参数
PROJECT
的值的选项,即:test1、test 2和test 3。因此,无论何时选择test1,jenkins job都会执行基于
test1
的stage管道代码示例
输出:
1.当选择
test1
时1.当选择
test2
时更新答案
是的,可以使用Jenkins插件Parameterized Scheduler使用特定的参数值定期触发作业
在你保存项目和一些参数(如上面提到的管道代码)后,再次回到
Configure
,在Build Trigger
下,你可以看到Build periodically with parameters
的选项示例:
我将在这里每隔偶数分钟运行
PROJECT=test1
的作业,每隔奇数分钟运行PROJECT=test2
的作业。下面是配置请根据需要更改crontab值
输出: