Skip auto devops jobs based on license
Problem to solve
Currently, certain auto devops jobs do not run if user is on CE instance (ie SAST, dependency scanning) however we continue to show those jobs in the pipeline view of auto devops. Additionally, we currently run jobs that may not apply to the GitLab instance running them (based on license).
Further details
Use cases:
- Do not run Auto SAST jobs unless license = ultimate
- Do not run Auto Container Scanning unless license = ultimate
- Do not run Auto DAST jobs unless license = ultimate
- Do not run Auto Browser Performance Testing unless license = premium
Proposal
- Use
$GITLAB_FEATURES
and regex logic to determine which jobs to run - If instance does not have the right license, skip all jobs that do not apply for that license
- Do not show skipped jobs in the pipeline view of auto devops
Additionally, it may be useful to indicate to the user:
- which jobs did not run
- why they didn't run
- how they can upgrade in order to run those jobs
What does success look like, and how can we measure that?
Cleaner pipeline view for auto devops jobs (less failed jobs) for relevant licenses.
Links / references
Solution
this work will only involve changing the Auto DevOps CI template to make use of only/except and therefore will behave the same as any customer created CI YML file that uses only/except
.
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.