Import all GitHub Projects when importing a GitHub Org
<!--IssueSummary start--> <details> <summary> Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards. </summary> - [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=348757) </details> <!--IssueSummary end--> ## 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. ### :footprints: This issue After importing a GitHub Organization into a GitLab Group, also import all GitHub projects from that Org into the newly created Group. ### Iteration plan 1. :footprints: ~2492649 API to get all available orgs for the user - https://gitlab.com/gitlab-org/gitlab/-/issues/348756 1. :footprints: ~2492649 API to import just the org (name and description) into a new group - https://gitlab.com/gitlab-org/gitlab/-/issues/348755 1. :footprints: ~3412464 UI to import the org into a new group - https://gitlab.com/gitlab-org/gitlab/-/issues/348704 1. :footprints: ~2492649 Import all the projects in that org - **THIS ISSUE** 1. :footprints: ~2492649 Import the avatar - https://gitlab.com/gitlab-org/gitlab/-/issues/348758 ## Technical details Per [GitHub API documentation](https://docs.github.com/en/rest/reference/projects#list-organization-projects): * we can use **`GET` /orgs/{org}/projects** to get a list of Projects
issue