Support triggering CI/CD pipelines for pull requests to / forks of GitHub repos
Problem to solve
Currently the GitLab CI/CD for GitHub triggers the pipelines only for branches of the mirrored GitHub project. It would be great to extend this to forks of the mirrored GitHub project.
GitHub workflows are very often based on a user forking a repository, doing their development, and submitting a GitHub pull request. (GitHub does not allow those users who are not project "contributor"s to create a new branch on a project.) So the ability to run pipelines across project forks would make GitLab CI/CD available to a wider audience.
In a first instance, this feature can be implemented for pull requests submitted to the original GitHub repository. This should be much less work compared to extending the feature to GitHub forks (as the latter entails more development effort to link in project forks to the mirror project on GitLab). And I think this is an essential feature with regards to regressions.
It can then be extended to forks, unless this is not desired from the security perspective.
What does success look like, and how can we measure that?
Just as the current infrastructure feeds CI/CD results back to GitHub issues in the form of a green tick or a red cross, in a similar manner, CI/CD pipelines should be executed for the tip of the source branch in a GitHub pull request, and the result should be fed back to the relevant pull request.