Trigger webhook when artifacts are expiring
Description
When artifacts from a pipeline are triggered to be expired either manually or because of the specified time has elapsed, also send a trigger to a web hook such that any dependent services on these artifacts can be notified that this version is no longer in use.
Proposal
Trigger job status webhook when artifacts are removed for that particular job.
Links / references
Documentation blurb
Overview
Trigger for external scripts to be called when artifacts are removed.
This allows for artifacts that have been uploaded to external services (for instance debug symbols for a crash reporting tool) to be automatically removed when the artifacts are removed in GitLab. For temporary builds that you wouldn't keep forever it would be great to also have these symbols be automatically removed on the remote side to make sure you don't accidentally remove the wrong version.
In our case a middleware server would accept the call from GitLab and then forward it to the appropriate services.
Use cases
Build binary software product and in the build steps upload the debug symbols to a crashrepoting service like BugSplat.com. Then when the release is very temporary (internal testing) say lifetime of about 1 week or couple of days, the artifacts get removed from GitLab in 2 weeks, and when that happens we can trigger BugSplat.com to remove that particular version as well. Any crashes coming in on old versions are no longer relevant - as this was internal testing builds.
Feature checklist
Make sure these are completed before closing the issue, with a link to the relevant commit.
-
Feature assurance -
Documentation -
Added to features.yml