A release repository stores container images that have passed the required quality gates and are approved for production deployment. Images first move through a staging repository, where unit-tested builds undergo end-to-end tests; production then deploys the exact tested images from the release repository. section 16.2 section 16.3
Promote images through the pipeline without rebuilding them:
- Build and tag images in the staging repository, recording build numbers and audit labels. section 16.2
- Run smoke or end-to-end tests on the supported platforms and wait for the quality gates to pass. section 16.3
- Pull the staging images, apply release repository tags, and push them without rebuilding from source. section 16.3
- Deploy production from the release repository, optionally applying security scanning or image-signing policies there. section 16.3
Promoting a tested image
Release workflows use the staging Compose file to pull the tested images and the release Compose file to push them under release references. Enable the workflows, commit, and push: mv ../.github/workflows.ignore/package-release*.yaml ../.github/workflows/; git add --all; git commit -m 'Add release workflows'; git push. The workflow then tags the staging images and publishes them to the release repository.
