One pipeline template for all projects: include, versions and drift control
Twenty repositories and twenty copies of the same CI file, each slightly different. How to move the logic into a versioned GitLab CI template and leave projects only their variables.