创建GitHub分支并推送提交后,multi branch pipeline未显示且无法搜索到
核对多分支流水线源配置
先检查分支包含规则,是不是用了*这类能覆盖新分支的通配符?有没有不小心加了排除规则把目标分支过滤掉?另外必须确保Discover branches选项是勾选状态,不然Jenkins不会主动扫描新分支。手动触发扫描看日志
进到多分支流水线项目页面,点左侧的Scan Multibranch Pipeline Now手动扫一次。扫完后看扫描日志,有没有关于新分支的报错——比如找不到Jenkinsfile、脚本语法错了、权限不够拉取代码之类的,这些都会导致流水线不生成。确认新分支里的Jenkinsfile没问题
新分支里必须有正确命名的Jenkinsfile(注意大小写,Jenkins对这个敏感),而且脚本语法得合法。可以用Jenkins自带的语法检查工具验证脚本,或者直接看扫描日志里有没有Jenkinsfile相关的错误提示。检查GitHub webhook是否正常工作
去GitHub仓库的webhook设置里,确认钩子地址指向Jenkins,而且事件类型勾选了Push和Branch or tag creation。要是webhook没触发,Jenkins不会自动扫新分支,要么手动扫,要么修复webhook的连接问题——比如URL对不对、密钥匹配不匹配。翻Jenkins系统日志找异常
进Jenkins的Manage Jenkins->System Log,搜分支名或者流水线名,看看有没有未捕获的异常,比如Jenkins没权限访问GitHub仓库,或者插件冲突导致扫描失败。排查分支命名是否符合过滤规则
有些流水线会设前缀过滤,比如只认release/*或feature/*开头的分支,要是新分支名字不符合这个规则,自然不会生成对应的流水线。
内容的提问来源于stack exchange,提问作者Vootla Chaitanya

