Re-create release evidence after releases are migrated using GitLab Migration
What does this MR do and why?
bulk_import_projects
feature flag that is currently off by default (and disabled on .com).
This MR updates BulkImports::Projects::Pipelines::ReleasesPipeline
that imports Project Releases, to re-generate release evidence post-import, when importing using GitLab Migration (https://docs.gitlab.com/ee/user/group/import/).
The process of generating this evidence is identical to the one in Releases::CreateService
.
We are re-generating release evidence post import, instead of exporting and importing this data due to the outcome of this discussion. Release evidence can contain sensitive information as well as old id
s that are stored in database as json, which we'd have to sanitize during import. It was suggested to re-create it, which is way easier to do from Import POV, as we no longer need to cleanup the incoming data.
Mentions #360567 (closed)
Screenshots or screen recordings
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 a new release & observe it has release evidence
- 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 releases. Release evidence should be present.
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.