I have a couple of pipelines:
CI (Build / Deploy to CI) - this pipeline stores the built artifact in the artifact store, and has "Never delete artifcats" ticked.
QA (Fetch Artifcat from CI pipeline/Deploy to QA/Run tests etc)
Live (Fetch Artifact from CI pipeline/Deploy to Live)
The Go system also has many other pipelines from other teams and products. We have an issue where if you don't tick "Never delete artifacts" artifacts get deleted from the artifact store - even when the artifact store isn't full. Maybe this in itself is an issue?
However, my suggestion is this; On a pipeline add the ability to delete old artifacts once a certain pipeline has complete. So in my above pipeline setup, if we are deploying version 5 to Live - once the pipeline completes, it would delete old artifacts (versions 4,3,2,1). Should we need the old versions we can obviously rebuild from source, but 99.9% of the time we don't need them.
The product involved has quite a large built artifact (200Mb +). Obviously after a number of builds, the artifact store gets quite full and has a knock on effect on other teams.
Please sign in to leave a comment.