有没有办法告诉Jenkins(2.2)删除已删除分支的作业?目前,我的构建监视器填满了分支,因为作业未被删除。是否有触发此行为的设置或是否应将其归档为错误?
答案 0 :(得分:15)
由于您使用的是最新的Jenkins版本,请考虑将作业切换为multibranch pipeline setup。
Workflow Multibranch功能(由工作流插件提供)提供以下关键功能:
在回购中每个新分支在Jenkins中创建自动工作流程(作业)(假设webhooks从GH注册到Jenkins)。
特定于该子分支及其独特的scm更改和构建历史记录。
根据设置从存储库中删除分支的自动作业修剪/删除。
通过覆盖父属性(如果需要),可以灵活地单独配置分支属性。
编辑:检查'弃置旧项目'您管道的设置。如果您有非零'最旧的旧项目'然后,如果您的分支具有较少的构建,那么这个数字,它永远不会被删除!你甚至可以在日志中看到它:
Will not remove US12345 as it is only #1 in the list
Will not remove US23456 as it is only #2 in the list
Will not remove US34567 as it is only #3 in the list
编辑:您还可以通过添加名为" Prune陈旧远程跟踪分支机构"的其他行为来试试运气。 ("行为" - >"添加" - >从下拉列表中选择。)
答案 1 :(得分:5)
1)转到Manage Jenkins -> Global Tool Configuration -> Git -> Add Git -> Choose JGit
。
2)然后转到您的多分支渠道配置,并在JGit
Default
代替Branch Sources -> Git Executable
3)按Branch Indexing -> Run now
旧枝条现在应该消失