Eng: Ensure projects are created within a group — billing page MVC
Based on the findings documented in the epic &7375 we discovered that users who want to upgrade to a higher plan but don't have a group, can't really do that. They first need to create a group, a new project or transfer the one from their personal namespace to that new group and only then start the upgrade process from the billing page.
So the personal namespace billing page looks like this and the user may be confused by a number of things:
The complete user journey to work around this problem is mapped in this Mural.
The current instructions don't really account for the case when a user doesn't have a group. It simply assumes that they do and tells them to go to its billing page. It provides a link to the groups overview but if a user doesn't have a group it'll only show the empty state page:
Problems we may need to solve:
- users don't have any group and proceed to creating a new group but their project remains in the personal namespace
- users have group(s) but the project they want to upgrade is in their personal namespace so they don't know which group to select on that overview of groups.
- users don't know the difference between personal namespaces and groups
- users don't know how to move an existing project to a group
Solution
I decided to prioritise the following problems to solve for this issue:
- users don't have any group and proceed to creating a new group but their project remains in the personal namespace
- users don't know how to move an existing project to a group
Personal namespace billing page
We add an additional paragraph to the billing page of the personal namespace:
If you don’t have a group you’ll need to create one and move this project to it.
create one
links to https://gitlab.com/groups/new#create-group-pane
move this project to it
links to https://docs.gitlab.com/ee/user/project/settings/#transferring-an-existing-project-into-another-namespace
Group empty state page
We add a paragraph to the end of the existing text of the empty state:
Do you have an existing project you'd like to move into this group? Learn how to do so here.
Learn how to do so here
links to https://docs.gitlab.com/ee/user/project/settings/#transferring-an-existing-project-into-another-namespace
Personal namespace billing page | Group empty state |
---|---|
![]() |
![]() |