Use `.latest` templates to stage breaking changes in vendored templates and analyzers
Release notes
Problem to solve
As an engineer, I want a mechanism to release new and changed functionality without worrying about backwards compatibility. Not having this capability adds significant work when preparing for and executing tasks which are part of major releases.
Proposal
Feature flags are used in the rails platform and GitLab FE to stage changes, providing a nice and progressive rollout strategy. We lack this ability in Sec analyzers, particularly as it relates to vendored CI templates and the analyzers themselves. There is a roughly equivalent paradigm in vendored templates which we might be able to take better advantage of: https://docs.gitlab.com/ee/development/cicd/templates.html#latest-version. Utilizing these templates throughout the section could significantly reduce complexity in producing and releasing breaking changes in the analyzers themselves.
Intended users
- Parker (Product Manager)
- Delaney (Development Team Lead)
- Sasha (Software Developer)
- Simone (Software Engineer in Test)