微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

bash – Jenkins为所有作业删除比最新20版本更早的版本

我正在清理Jenkins(它设置不正确),我需要删除比每个作业最新的20个版本更旧的版本.

有没有办法使用脚本或其他东西自动化?

我找到了许多解决方案来删除特定作业的某些构建,但我似乎无法一次找到所有作业的任何内容.

任何帮助深表感谢.

解决方法

您可以使用 Jenkins Script Console遍历所有作业,获取最近N个列表并对其他作业执行某些操作.

MAX_BUILDS = 20

for (job in Jenkins.instance.items) {
  println job.name

  def recent = job.builds.limit(MAX_BUILDS)

  for (build in job.builds) {
    if (!recent.contains(build)) {
      println "Preparing to delete: " + build
      // build.delete()
    }
  }
}

Jenkins脚本控制台是一个很好的管理维护工具,并且通常有一个现有的脚本可以执行类似于您想要的操作.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐