我创建了一个Jenkins作业,该作业查询AWS CLI并使用一些数据填充变量。
然后触发下游项目,并将父作业中的变量注入下游作业,作为CloudFormation堆栈创建的参数(参数值是最新RDS快照ID的名称)。
我想知道是否有可能根据某些选择参数触发不同的下游项目?
例如,假设父作业具有不同AWS区域的选择参数设置。
启动构建的用户将选择正确的区域,然后根据他的选择,将触发的下游项目是与该区域匹配的项目。
这甚至可能吗? (顺便说一句,这是一个自由式项目)
答案 0 :(得分:0)
2种方法。
1 - 使用Parameterized Trigger plugin
创建具有多个配置的作业。 在作业中设置矩阵配置(这将是下游作业)。在这种情况下,第二个作业(让我们的调用作业B)有多个配置,可以匹配您想要的每个场景。
在后期构建中选择"在其他项目上触发参数化构建" (在主要工作中,让我们打电话给工作A)。然后"添加参数"和"限制矩阵执行到子集"在这里你把你的var作为作业B中配置组的引用。
2 使用Conditional Build Step plugin
在构建中添加"条件步骤(多个)"。设置"运行?"字符串匹配。在字符串1中,将var($ var1)放在字符串2中,将单词匹配(jobB)。
在运行的步骤中,选择"在其他项目上触发/调用构建"