我在Jenkins中设置了Github Webhook,并使用以下配置创建了作业:
但是,每次我从任何分支推送内容时,作业都会使用我指定的分支来构建新版本。
我通过阅读有关Stackoverflow的一些相关问题来进行这项工作,但所有这些问题都已经过时并且没有明确的解决方案了:
GitHub WebHooks triggered globally instead of per branch
Trigger Jenkins job on GitHub PUSH to specific branch
是否可以仅从特定分支触发推送?
答案 0 :(得分:1)
您正在使用GitHub Webhook触发预配置的作业。您的工作具有硬编码的“ JENKINS-TEST-AUTODEPLOYMENT”分支,因此,无论您要在GitHub上哪个分支,它都将始终仅构建此分支。
如何使用GitHub Branch Source Plugin? 使用此插件,将在github中为相应的存储库自动创建Hooks。每个分支将在jenkins中创建一份工作,只要您在Repo中具有Jenkinsfile,该工作也会自动创建。有了这个,您的期望状态应该很容易实现。
答案 1 :(得分:1)
最后,我使用 Multibranch Pipeline 。
在分支源中:
在“构建配置”中,将路径添加到Jenkinsfile。
因此作业将扫描存储库中与正则表达式匹配的所有分支。