Import wizard discovery
Overview
Importing information from outside GitLab is one of the first steps an administrator may take, but the import experience needs improvement:
- It's not presented in the most intuitive way and takes time to grok. The best tool GitLab offers is project import/export, which has limitations that must be understood by reading our documentation. We're now adding a group import/export tool which requires a user to understand projects and groups and have a strategy for how those should map to the information they want to import.
- It's not clear how to accomplish an importing job. If you're importing GitLab self-managed to self-managed, you can use backup-restore. Depending on your import task, there may be a more elegant way to accomplish it (e.g. GitHub) but it requires the user to do some digging.
We should remove these problems for the user and consider introducing a one-stop-shop for importing information into the GitLab UI.
Proposal
Validate the need for a first-class import experience in GitLab and that the above challenges are significant problems to better adoption.
Prototype a new import experience. It could be a multi-step process:
- Step 1: Select your source (e.g. GitHub, Jenkins, Jira, Bitbucket Server, etc).
- Step 2: Present all of their projects from the source so they can indicate what they'd like to pull over. We show the user what's possible.
- If we don't have a custom importer, link/show them documentation that may help.
- If we do have something custom built like our GitHub importer, present this to the user.
- Step 3: Map indicated projects from source into GitLab (map projects into new projects/groups in GitLab).
- Step 4: Start import job.
This import flow would be offered as users sign up for GitLab or just arrive in a fresh new instance.
WIP: Object Mapping and Information architecture.
Workflow Map
Import |
---|
WIP: Prototype
Edited by Daniel Mora