我正在将Jenkins管道与Jenkinsfile一起使用。 我想在一天的特定时间触发一个特定分支的构建。 问题是,使用多分支管道选项时会受到限制。 只有一个
使用默认触发器扫描多分支管道
会周期性地触发所有分支的建立(甚至不在一天的特定时间)。 是否有在特定时间建立一个特定分支的解决方案?有没有办法在多分支管道项目类型中拥有丰富的配置? (例如,启动自由样式项目时) 谢谢
答案 0 :(得分:0)
当然有那些选择。
您在谈论脚本化管道吗?
请检查管道properties
步骤。
您可以使用它来配置诸如时间触发之类的实际选项。
将多分支视为不是一个作业,而是一个每个分支包含一个作业的文件夹。对于每个分支,可以使用properties
步骤来设置这些选项。不能使用GUI设置它们,您只能查看它们。
例如,最好使用代码段生成器为一个分支生成所需的选项。
根据您的需要,所有分支都可以具有相同的Jenkinsfile,并选中env.BRANCH_NAME
以使用if或switch条件设置每个分支的属性。
或者您可以为每个分支(与master分支相比)调整Jenkinsfile的这一部分。
不幸的是,我还没有太多使用声明式管道的经验。
但是,有options
子句可以设置类似于属性步骤的构建属性。
不确定属性步骤本身是否也将可用。
万一您需要其他东西,您仍然可以创建一个单独的管道作业,该作业只需要在正确的时间为所需的作业触发正确的分支。使用脚本化管道不应太难。您只需要以某种方式找出当前时间,以便知道要触发哪个分支。对于触发器,请使用build
步骤。对于要触发的项目,请使用multibranch job name/branch name
语法。
您还可以创建一个单独的触发器作业,每个分支一个。这些作业本身可以在不同时间触发,只需使用build
步骤触发目标作业的分支即可。
答案 1 :(得分:0)
或者您可以将输入变量用于管道中的分支。
例如
matplotlib