Defining the release process and management
We have covered all of the building blocks it takes to build and deploy software. CI builds new container images or artifacts and pushes them to a registry. We know that registries have the power to scan for vulnerabilities, replicate to other registries, notify other tools about any activity, and enforce access control.
We also learned about GitOps and its pull approach of ensuring the desired deployment state (manifest files, Helm charts, Kustomize, etc.), as defined in a Git repository on the target environment.
What we are discussing now is how to define and enforce a full end-to-end release process and how to manage the life cycle of artifacts from the initial creation, initial deployment, promotion into other stages, and updates to new versions until a potential retirement when the software is no longer required!
The following illustration highlights that pushing a new image and replicating it to other registries is just one...