Jenkins delete builds older than latest 20 builds for all jobs

前端 未结 6 589
悲哀的现实
悲哀的现实 2021-01-02 01:30

I am in the process of cleaning up Jenkins (it was setup incorrectly) and I need to delete builds that are older than the latest 20 builds for every job.

Is there an

6条回答
  •  北海茫月
    2021-01-02 02:27

    I got an issue No such property: builds for class: com.cloudbees.hudson.plugins.folder.Folder on Folders Plugin 6.6 while running @Dave Bacher's script

    Alter it to use functional api

    import jenkins.model.Jenkins
    import hudson.model.Job
    
    MAX_BUILDS = 5
    Jenkins.instance.getAllItems(Job.class).each { job ->
      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()
        }
      }
    }
    

提交回复
热议问题