Add a `merge_request.assignee` git push option
### Problem to solve When merge requests are created programmatically they are assigned to the merge request creator. This is often not the desired behavior, especially if the creator is a bot. There should be an easy way to create merge requests that are assigned to other users. ### Intended users Anyone who uses `git push -o merge_request.create`. ### Further details Our team has a bot that performs automated housekeeping tasks and creates merge requests as part of this process. We need these MRs to be assigned to humans in order to review them and merge them in. (We have approval requirements enabled in our projects, which also means we can’t auto-merge when the pipeline succeeds -- a different users needs to do it. Sometimes the pipeline also fails as a result of these changes, and manual edits need to be made.) ### Proposal Add a new push option, `merge_request.assignee”. Its value would be a comma-separated list of GitLab usernames. When included, this would be the assignee list for the new MR. When omitted the current behavior of using the creator as the assignee would be used. ### 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/ --> ### Workaround As such `git push -o` commands are often used in scripts, creation of an MR could be followed-up by a call to the [Update MR](https://docs.gitlab.com/ee/api/merge_requests.html#update-mr) API to set the intended assignee. ### 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 - https://support.gitlab.com/hc/en-us/requests/121789 - https://docs.gitlab.com/ee/user/project/merge_requests/#create-a-new-merge-request-using-git-push-options
issue