Allow to use trigger token in multi-project pipelines

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Proposal

Currently it is possible to trigger pipeline in two different ways:

The benefit of triggering a pipeline from ci yaml in multi-project mode is a native approach bringing also visibility with pipeline graph and such nice features as strategy:depend behavior.

However trigger statement approach has also many limitations. One of those - is that user needs to have privileges to run private pipelines in that child project. By making everyone developer in that child group - we loose the initial idea of building compliant service pipelines.

So as a proposal I suggest to introduce also token parameter for a trigger statement:

trigger:
  project: devops/deployment-service
  token: $DEPLOY_TOKEN

Expected behavior in this case is that pipeline starts in the same way as it starts from API but as a downstream pipeline.

As the result we may get following benefits:

  • Proper pipeline visualization via DAG ( currently it's possible to do via API but it will be a different pipeline )
  • Ability to enable impersonalized pipelines ( service-to-service ) when projects will be releasing their tokens and share them to another pipelines ( let's say via Vault )

With this appoach we may solve such issues as

Edited by 🤖 GitLab Bot 🤖