Import Avatar for GitHub Organizations
Overall problem to solve
When a large organization migrates from GitHub to GitLab, there is currently no awareness in GitLab of which projects belong to the organization and there is no way to automatically create a GitLab group from a GitHub organization.
The user has to first manually create a GitLab organization and then import desired projects into it. This makes it harder for someone to manage a large migration and also introduces manual steps that have to be completed before the import.
Proposed solution
Allow the users to choose to automatically create a GitLab group from a GitHub organization and then import all the projects that belong to that Org into the newly created Group.
GitHub Importer would have the ability to show all the GitHub Organizations that the user has (admin) access to. The user would be able to select an Org and some (or all) Projects in it and initiate a migration from GitHub into GitLab.
The import process would create a new Group including basic attributes, such as Name, Description, and Avatar. The user would then be able to import desired Projects into this Group.
👣 This issue
When importing a GitHub Organization, also import the Org Avatar and set it as GitLab Group Avatar.
Iteration plan
-
👣 backend API to get all available orgs for the user - #348756 (closed) -
👣 backend API to import just the org (name and description) into a new group - #348755 -
👣 frontend UI to import the org into a new group - #348704 -
👣 backend Import all the projects in that org - #348757 -
👣 backend Import the avatar - THIS ISSUE
Technical details
- we can use
GET
/orgs/{org} to get details of an Organization
- we can use
POST
/groups to create a new Group
API field mapping:
GitHub | GitLab |
---|---|
name | name |
description | description |
avatar_url | avatar |