jenkins 蓝海渠道没有“构建触发器”选项

zrfyljdw  于 2022-11-02  发布在  Jenkins
关注(0)|答案(1)|浏览(260)

我已经研究了这个问题很多,但找不到答案,所以我以前在Jenkins上设置了一个简单的项目,我得到了“构建触发器”选项卡的所有好处,在那里我可以选择什么可以触发项目构建(例如拉取请求)。
然而,在蓝海项目中,我只能在特定分支〉查看配置下看到这些选项,并且它不允许我保存任何已配置的选项,它只显示配置,没有保存按钮。我已附上以下截图:
这是项目〉配置,它允许我保存更改和一切,但没有构建触发器的选项。

它位于Project〉分支(master)〉View Configurations下,它显示了我想要的构建触发器,但没有将这些更改应用到该特定分支的选项。

所以,我想问题是,我如何将构建触发器添加到我的蓝海管道中?

iyzzxitl

iyzzxitl1#

在分支下看到的建置触发应该是Jenkinsfile指示词中所产生的trigger指示词的反映,其为:

*一月一日

接受cron样式的字符串,以定义重新触发管道的固定间隔,例如:

triggers { cron('H */4 * * 1-5') }

*一个月一个月

接受cron样式的字符串以定义Jenkins应检查新源更改的固定时间间隔。如果存在新更改,则将重新触发管道。例如:

triggers { pollSCM('H */4 * * 1-5') }

*upstream

接受以逗号分隔的作业字符串和阈值。
当字符串中的任何作业以最小阈值完成时,将重新触发管道。例如:

triggers { upstream(upstreamProjects: 'job1,job2', 
                     threshold: hudson.model.Result.SUCCESS) }

它将与when指令配对,后者指定分支

branch

当正在生成的分支与给定的分支模式匹配时,执行阶段,例如:

when { branch 'master' }

请注意,这仅适用于多分支管线。
Nmaresh Kulkarni在注解中添加:
看起来从脚本远程触发不是一个选项,这个选项是防火墙后面的人必须的。
我能想到的唯一方法是创建一个假触发器作业,并将其配置为使用Jenkinsfile进行实际回购的上游触发器。

curl -X POST -u "$username:$api-token" "$jenkins-url/job/$job-name/job/$branch-name/build"

在推送到GitHub或Azure repos后,此API可方便地在本地网络内触发远程构建。
(From“How to trigger Jenkins builds remotely and to pass parameters”)的数据

相关问题