Improve CNG build to correctly support upstream gitlab-org/gitlab project
What does this MR do?
Several fixes and improvements to properly support upstream trigger from gitlab-org/gitlab
project
- Fix
build_if_needed
function to correctly skip unnecessary builds - Use upstream sources for tagging. This allows to create proper isolated contexts based on upstream changes rather than using mirrors branch names which are irrelevant in the context when triggered from upstream. As next iteration, update caching to use images produced by respective branches from upstream. This should also fix Fix CNG deployment in backport MRs (gitlab-org/quality/quality-engineering/team-tasks#2787 - closed) because currently images are not tagged correctly when triggered from backport mr's due to conditional evaluating as if it is running in feature branch or auto deploy tag.
Related issues
Related to: gitlab-org/quality/quality-engineering/team-tasks#2362 (closed)
Closes: gitlab-org/quality/quality-engineering/team-tasks#2787 (closed), gitlab-org/quality/quality-engineering/team-tasks#2821 (closed)
Checklist
See Definition of done.
For anything in this list which will not be completed, please provide a reason in the MR discussion
Required
-
Merge Request Title, and Description are up to date, accurate, and descriptive -
MR targeting the appropriate branch -
MR has a green pipeline on GitLab.com -
When ready for review, MR is labeled "~workflow::ready for review" per the Distribution MR workflow
Expected (please provide an explanation if not completing)
-
Test plan indicating conditions for success has been posted and passes -
Documentation created/updated -
Integration tests added to GitLab QA -
The impact any change in container size has should be evaluated -
New dependencies are managed with dependencies.io
Edited by Andrejs Cunskis