bcgov / bcgov/backup-container
Maintain release images
- Dominant language
- Shell
- Stars
- 44
- Forks
- 65
- PR merge metrics
- No merged PRs in 30d
Description
When a release is created images are built and published to Docker Hub for that release. The images are not maintained following their release, meaning they are not rebuilt periodically to pick up updates (such as vulnerability fixes) made to the base container.
Create a scheduled maintenance job that maintains the last x (3 or 4) release images by rebuilding and republishing. The job should trigger at least once a month. This will help reduce the number of teams building and maintaining their own images.
Bonus points for:
- Making the job(s) smart enough to know whether the base image has changed and only build the related images if the base image has changed since the last build.
- Triggering the job(s) when there is a change to the related base image.
Other decisions that should be considered:
- [ ] Should we continue publishing to Docker Hub?
- [ ] Should we publish to the GHCR as well or instead of to Docker Hub?
Contributor guide
Research direction
Start by reviewing how release creation currently builds and publishes images to Docker Hub, then identify the existing job or entry point responsible for that process. Define the scheduled maintenance scope for the last three or four releases and verify that it rebuilds and republishes them at least monthly; Docker Hub versus GHCR remains an open decision.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, shell
- Domain
- build-system, devops, release
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100