Include all necessary group and project attributes in self relation file for offline transfer

In direct transfer, there are groups and projects are created in two steps

  1. The base portable is created in BulkImports::Projects::Pipelines::ProjectPipeline for projects and BulkImports::Groups::Pipelines::GroupPipeline for groups. These pipelines make GraphQL queries to the source destination, which won't be possible in offline transfer.
  2. Attributes for the newly created portable are updated in BulkImports::Groups::Pipelines::GroupAttributesPipeline or BulkImports::Projects::Pipelines::ProjectAttributesPipeline from self relation files.

While most of the attributes required to create groups and projects in step 1 are already in the self relation files, some notable attributes are missing for relying entirely on these files:

  • For project self relations:
    • name
    • created_at
    • visibility, however, visibility_level is already in the file
  • group self relation missing:
    • emails_disabled, comes from method emails_disabled?
    • visibility, however, visibility_level is already in the file

This issue is to add these attributes to group and project self relation files in offline transfer.

Potential investigation needed

  • Would simply adding these attributes to each potable type's import_export.yml be sufficient, or would that negatively affect direct transfer or file transfer?
Edited Jan 09, 2026 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading