Skip to content

Instantly share code, notes, and snippets.

@brandhill
Forked from perja12/delete_artifacts.groovy
Created April 9, 2019 07:59
Show Gist options
  • Save brandhill/aa5ad5ddd789c02f7f3adef5d9199052 to your computer and use it in GitHub Desktop.
Save brandhill/aa5ad5ddd789c02f7f3adef5d9199052 to your computer and use it in GitHub Desktop.
Delete artifacts from Jenkins with Groovy script.
// Delete old artifacts that fills up the disk on the master node.
// Run this from the Jenkins console (Manage Jenkins, Manage Nodes, master, Script Console)
def project = Jenkins.get().getItemByFullName('your-project-id')
def jobs = project.getAllJobs()
def total_size = 0
jobs.each{ job ->
def builds = job.getBuilds()
builds.each{ build ->
def artifacts = build.artifacts
artifacts.each{ artifact ->
total_size += artifact.getFileSize()
println "$artifact, ${artifact.getFileSize()}"
}
build.deleteArtifacts()
}
}
println "Total size: $total_size"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment