Add external pull requests to Project Migration
What does this MR do and why?
Mentions #339409 (closed)
bulk_import_projects
feature flag that is currently off by default (and disabled on .com).
This MR adds External Pull Requests migration when using Group Migration that includes projects (https://docs.gitlab.com/ee/user/group/import/). It's doing exactly the same thing as file-based Import/Export by using it's RelationFactory
within NdjsonPipeline
which is an Import/Export class.
It's also similar to our other BulkImports
pipelines, like merge requests, issues, labels
Screenshots or screen recordings
These are strongly recommended to assist reviewers and reduce the time to merge your change.
How to set up and validate locally
Feature.enable(:bulk_import)
Feature.enable(:bulk_import_projects)
- Create a top level group and project in it
- Create external pull request (I am not entirely sure how to do that)
- Go to
/groups/new#import-group-pane
page and enter instance url and access token (needs to beapi
&read_repository
scope) - Select newly created group and click Import
- Wait for Group import to complete and verify imported project's external pull requests
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.