GitLab CI/CD with multiple users

What is the best practice for having CI/CD Pipelines set up with multiple users?

I have a set up with 2 users - only one of which has been validated to use the GitLab Runners (but currently doesn’t have access to the main branch of the repo that I’m setting up the Pipeline for; lets call that user User 1 (U1) .

User 2 (U2) wants to deploy code from a feature branch, and is currently allowed to merge to main , but isn’t validated and can’t use the Runners.

I think the right way to do this is to allow U1 access to the main branch, and then:

  1. U2 creates feature branch off of main, makes code changes
  2. U2 pushes changes and creates a Merge Request to merge changes from the feature branch back in to main
  3. U1 is notified that U2 has a created a Merge Request, and after review, U1 merges the changes into the main branch
  4. The merging of the changes into the main branch kicks off a Pipeline, and using the GitLab Runner, GitLab deploys code to the servers

Thanks for any insights!

The best solution is obviously having both users verified so they can use GitLab Runners.

Alternative is to use your own GitLab Runner hosted somewhere, in that case users do not have to be verified to use them.

@balonik - Well, sure, but not everyone has a credit card.

I think I have it sorted out - unblocking the verified user from accessing the main branch seems to have done the trick :man_facepalming: