Add supporting internal file to test MRs.

Migrated issue

Reported by: fjgarlin

Related to !439 (merged) !438 (merged)

Proposed solution

We often tweak the .gitlab-ci.yml > .downstream-base > variables to turn jobs and variants off for testing during the MR progress.

We normally need to clean this up once everything is ready for review. Example: !416 (cffe2249)

Maybe we can create an assets/internal/downstream-variables.yml file that we include only on MRs?

That file can be included during MRs and ignored (not included) on push. Not sure if that file should still be cleaned before the merge or we just leave it with some sensible defaults, but it'd be clearer what's the purpose of it during testing.

If we want the file to be empty, we could do a job, only triggered on "push" that checks that, and error if not. That job could be optional on MRs, or even not be present at all.

Remaining tasks

  • Add the new file. [done]
  • Determine include: rules: [not required, as the file will only contain comments in the real branch]
  • Build job to check and fail if this file contains anything other than comments [done]
  • Run the new job when the pipeline is a Merge Train [done]
  • Set it to manual in all other cases [done]

Extending the checks

A second MR adds two further checks to detect temporary changes:

  • Use of issue fork branches in the downstream pipelines
  • Temporary changes marked with @debug, @temp and @temporary