Jenkins Plugin should support triggering pipelines from fork
<!--IssueSummary start-->
<details>
<summary>
Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards.
</summary>
- [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=30364)
</details>
<!--IssueSummary end-->
### Problem to solve
Sourced from: https://news.ycombinator.com/item?id=20500126#20505392
Most of the things in GitLab work great but we have the problem that we want to use Jenkins instead of the build in CI/CD solution but the only way to trigger MR jobs from GitLab forks in Jenkins is this non maintained plugin which has been in alpha since we started two years ago https://github.com/Argelbargel/gitlab-branch-source-plugin
Basically what we need is functionality which makes it possible to do:
- there is a canonical git repo for a component
- a dev doesn't have write access to it
- they fork it into their own private user name space
- they change it and create a merge request for the canonical git repo for one of the branches
- the merge request creates (or triggers) a job in Jenkins => this is where our research showed that only the unmaintained gitlab-branch-source-plugin plugin can do that https://github.com/Argelbargel/gitlab-branch-source-plugin
- Jenkins builds it and reports the status back to GitLab
- If it created a new job that job is removed after the MR gets merged.
It would be nice if, like the other plugin does it one could have it's own job for this MR with it's own history but I guess we could live also with a shared history if you could have the MR buld history in GitLab only.
update: I forgot to write that we use Jenkinsfile based pipelines, not sure if this is important.
### Intended users
<!-- Who will use this feature? If known, include any of the following: types of users (e.g. Developer), personas, or specific company roles (e.g. Release Manager). It's okay to write "Unknown" and fill this field in later.
Personas can be found at https://about.gitlab.com/handbook/marketing/product-marketing/roles-personas/ -->
### Further details
<!-- Include use cases, benefits, and/or goals (contributes to our vision?) -->
### Proposal
<!-- How are we going to solve the problem? Try to include the user journey! https://about.gitlab.com/handbook/journeys/#user-journey -->
### Permissions and Security
<!-- What permissions are required to perform the described actions? Are they consistent with the existing permissions as documented for users, groups, and projects as appropriate? Is the proposed behavior consistent between the UI, API, and other access methods (e.g. email replies)? -->
### Documentation
<!-- See the Feature Change Documentation Workflow https://docs.gitlab.com/ee/development/documentation/feature-change-workflow.html
Add all known Documentation Requirements here, per https://docs.gitlab.com/ee/development/documentation/feature-change-workflow.html#documentation-requirements -->
### Testing
<!-- What risks does this change pose? How might it affect the quality of the product? What additional test coverage or changes to tests will be needed? Will it require cross-browser testing? See the test engineering process for further guidelines: https://about.gitlab.com/handbook/engineering/quality/guidelines/test-engineering/ -->
### What does success look like, and how can we measure that?
<!-- Define both the success metrics and acceptance criteria. Note that success metrics indicate the desired business outcomes, while acceptance criteria indicate when the solution is working correctly. If there is no way to measure success, link to an issue that will implement a way to measure this. -->
### Links / references
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
*This page may contain information related to upcoming products, features and functionality.
It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes.
Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.*
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
issue