Add `release-environments` child pipeline setup and build images
What does this MR do and why?
Part of gitlab-com/gl-infra/delivery#2674 (closed)
As part of a larger effort around supporting the extension of the maintenance policy we are introducing a set of release environments that will match all versions of GitLab that will be supported. The first of these environments are being used to automatically deploy any merges to the stable branches to specific environments. More details on this are in this epic.
This means we need to expand the GitLab CI setup in the gitlab-org/gitlab repo to introduce a new child pipeline that will perform the following functionality
- Will build images with contents of the stable branch
- Deploy those images built into an environment matching the stable branch
- Run the appropriate QA against that environment after it's deployed
This change is the first step in bringing this together, it introduces a new child pipeline (to only be executed on commits/pipelines on stable branches) called release-environments
and starts the first step of this setup by triggering the build of the CNG images with the contents of the stable branch.
The jobs in question are allowed to fail while we work on bringing this together and getting confidence in the process. The next step will be to introduce another job into this new child pipeline to do the deployment of the built images.
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.