Cross-project connections outside `.gitlab-ci.yml`

Description

Something about having cross-project triggers in .gitlab-ci.yml bugs me. It makes forks more difficult because the links are hard-coded, and so the fork will try to trigger the downstream pipeline as well. Maybe that problem is just forward links, whereas backwards links might work better. But then a fork of the downstream will re-trigger any time the same upstream projects are updated. That might be a good thing, but might not.

At any rate, I'm wondering if this kind of project-specific configuration belongs in .gitlab-ci.yml at all. Could/should it be outside that file? Putting it in another file is a small step, but has the same problems above. Could/should it be in the web UI configuration? That violates configuration-as-code, but might be better anyway. Or maybe it should be in a separate, version controlled configuration, that is parallel to the main code repo.

Proposal

Links / references

Documentation blurb

Overview

What is it? Why should someone use this feature? What is the underlying (business) problem? How do you use this feature?

Use cases

Who is this for? Provide one or more use cases.

Feature checklist

Make sure these are completed before closing the issue, with a link to the relevant commit.

  • Feature assurance
  • Documentation
  • Added to features.yml
Assignee Loading
Time tracking Loading