如何移除Jenkins多分支流水线中已弃用的构建参数?
移除Jenkins多分支流水线旧构建参数的方法
方法1:重新索引多分支项目
- 进入多分支流水线项目主页,点击左侧菜单的**"重新索引多分支项目"**
- 等待索引完成后,Jenkins会重新读取各分支的Jenkinsfile,自动同步参数配置,旧参数大概率会被移除
方法2:手动触发分支配置同步
如果重新索引没效果,针对单个分支操作:
- 进入目标分支的流水线页面,点击左侧**"流水线语法",切换到"声明式流水线"标签页,点击"重新加载"**按钮
- 也可以直接访问分支的配置页面(格式类似
http://<你的Jenkins地址>/job/<多分支项目名>/job/<分支名>/configure),加载后刷新页面,部分场景下会触发配置同步
方法3:通过脚本控制台强制清理
要是前两种方法都失效,用Groovy脚本直接清理:
- 进入Jenkins的**"脚本控制台"**(路径:Manage Jenkins -> Script Console)
- 替换脚本里的
<多分支项目名>和<分支名>后执行:
def job = Jenkins.instance.getItemByFullName("<多分支项目名>/<分支名>") job.setProperty(null, job.getProperty(ParametersDefinitionProperty.class)) job.save() println "已清理该分支的构建参数"
- 执行完刷新分支页面,旧参数应该就消失了
批量清理所有分支的脚本
如果所有分支都有这个问题,用下面的脚本批量处理:
def multiBranchJob = Jenkins.instance.getItem("<多分支项目名>") multiBranchJob.getItems().each { branchJob -> branchJob.setProperty(null, branchJob.getProperty(ParametersDefinitionProperty.class)) branchJob.save() println "已清理分支 ${branchJob.name} 的构建参数" }
注意:操作前建议备份Jenkins的
config.xml配置文件,避免意外问题
内容的提问来源于stack exchange,提问作者pixelstuermer
相关产品推荐
相关产品推荐

