Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Determine your expiry management criteria in days for each type of data - artifacts, logs, and results (removing a build result also removes artifacts and logs).
  2. Create a build that runs on your own schedule and includes the follow script
Code Block
languagebash
themeMidnight
titleExample
#!/bin/bash -x

acli ${bamboo.localSite} -a run --continue \
  -i "-a setExpiryOptions --field artifacts --field expireAfter=2   --field buildsToKeep=5 --field maximumBuildsToKeep=5 --field deploymentsToKeep=5 --field labelsToKeep=keep " \
  -i "-a runBuildExpiry" \
  -i "-a setExpiryOptions --field logs      --field expireAfter=60  --field buildsToKeep=5 --field deploymentsToKeep=5   --field labelsToKeep=keep " \
  -i "-a runBuildExpiry" \
  -i "-a setExpiryOptions --field results   --field expireAfter=120 --field buildsToKeep=5 --field deploymentsToKeep=5   --field labelsToKeep=keep " \
  -i "-a runBuildExpiry"


Tip

View your current global expiry settings to help you determine the last (results) setting. 

Explainer

This script sets Bamboo's global expiry with the custom field settings and then runs the expiry immediately. It repeats this for each of the data types.   

In the example above, we are very aggressive on removing artifacts unless the build has explicitly used the keep label. We keep the results much longer as they do not impact disk space much at all.

To understand the meaning of the field settings, go to the Bamboo global expiry screen or view the Atlassian documentation on this topic.