Jenkins多分支流水线中编辑配置

24

我找不到编辑多分支流水线项目配置的方法。当我切换到分支级别时,只有一个“查看配置”菜单项,与普通流水线项目不同。

我正在寻找一种从Jenkins外部配置构建触发器的方法。我的当前解决方法(对于每个分支定义一个流水线)在初始测试之外是不可行的。


我认为我有同样的问题,多分支管道项目的每个管道都无法保存:没有保存/应用按钮...你有这种情况吗? - user2668735
1
@Wimateeka 是正确的:多分支流水线可以通过Web UI进行配置,每个分支的配置是通过源代码控制中的Jenkinsfile定义的。 - rubicks
3个回答

4
您可以编辑多分支流水线项目的整体配置,例如它将读取的存储库和需要的任何凭据、扫描分支以检查更改的触发器(注意:不是构建触发器)、孤立项策略、构建配置、属性和其他一些内容。这可以通过单击显示所有分支的页面上的“配置”进行查看,如果没有,则会显示为空。

请注意,这仅适用于不属于组织文件夹(不是“Bitbucket Team/Project”或“GitHub Organization”类型项目)的多分支管道。

enter image description here enter image description here


如果您点击分支名称(例如:master),然后点击“查看配置”,将只能让您查看它。您必须编辑正确分支上定义该流水线的文件才能更改它。在这些屏幕截图的情况下,您需要编辑Test-Multibranch-Job存储库中master分支中的Jenkinsfile来编辑配置。
要添加触发机制,如果您的存储库在Gitlab中,则可以在Jenkinsfile中添加triggers { gitlab(<config-here>) }。还请注意您是使用声明性流水线还是脚本流水线,因为语法不同。

enter image description here enter image description here

注意:我正在运行 Jenkins 版本 2.92

这并不适用于多分支流水线,它们是组织文件夹的一部分。请参阅 @eversMcc 的评论。 - SilverJan
@SilverJan哪一部分不是真的?你能详细说明一下吗? - Wimateeka
编辑部分。对于组织文件夹(例如Bitbucket或GitHub)的多分支流水线,您无法在初始设置后编辑配置。这也是https://issues.jenkins-ci.org/browse/JENKINS-33900?focusedCommentId=326208&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-326208中提到的内容。 - SilverJan
你是在说“Bitbucket团队/项目”还是“GitHub组织”?我以前从未使用过这些。我可以编辑答案以指定多分支管道可以通过Web UI配置,并且每个分支配置仅适用于多分支管道/工作流程的Jenkinsfile由源代码控制。如果您有解决方案,可以编辑属于组织文件夹的多分支管道,那么您应该在此发布以供其他人阅读。此问题的提问者也没有指定他们使用的项目类型。 - Wimateeka
1
就我个人而言,我在Bitbucket团队/项目中遇到过这种情况。然而,根据Jenkins Jira问题,它适用于两者。由于Jenkins Jira问题评论所述,目前还没有解决方案,因为这是设计上的问题。感谢您将这一信息添加到您的答案中! - SilverJan

2

我的要求是在git提交时触发构建,而不暴露Jenkins给外部。因此,在我的情况下,定期作业无法工作。 - rhoerbe
你是使用GitLab还是GitHub?如果是GitLab,你可以在“管理Jenkins >> 配置系统”中设置GitLab连接,在GitLab中创建一个Webhook,它将发布到Jenkins中的“/project”端点,然后在Jenkinsfile中的triggers{gitlab(<config-here>)}部分指定所有配置(你试图实现的关键),请参见https://github.com/jenkinsci/gitlab-plugin#jenkins-job-configuration以获取更多有关你可以指定的配置的详细信息(triggerOnPush:true,可能适合你)。 - eversMcc
如果您想为不同的分支设置不同的配置,可以在每个分支/Jenkinsfile中指定不同的 `triggers{gitlab(<config-here>)}',并使用 'branchFilterType'、'includeBranchesSpec' 和/或 'excludeBranchesSpec' 配置选项(尽管我个人没有尝试过)。 - eversMcc

1
如果您想编辑Multibranch配置,例如配置没有Jenkinsfile的Multibranch Action Triggers,您可以直接在服务器上编辑配置文件,在/var/lib/jenkins/jobs/NAMEOFPROJECT/config.xml中进行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接