Product Discovery for Group License Management
Problem to solve
We want to define approved/blacklisted licenses at group level. This creates rules that are applied to any project in the group (also, subgroups).
Target audience
Delaney, our Development Team Lead
Further details
We can reuse a similar approach of the project settings page, but we need to define:
- which rule has precedence (group/project)?
- in case is project, do we want to allow enforcement from group level?
- how users can see rules from project?
- when looking at the report, how to identify if it is a group/project rule?
- when adding a new rule from a report, where will it be stored?
Areas we need to cover:
Merge Request Widget
Cases | Addressed yet? | |
---|---|---|
1 | Group maintainer experience | |
2 | Non-group, project maintainer expereince | |
3 | Developer and other non-maintainers experience |
License settings / project level
Cases | Addressed yet? | |
---|---|---|
1 | License policy locked | |
2 | License policy unlocked | |
3 | Adding a new license |
License settings / group level
Cases | Addressed yet? | |
---|---|---|
1 | license policy locked | |
2 | license policy unlicked | |
3 | Add new license | |
4 | Remove license |
Pipelines / License report
Cases | Addressed yet? | |
---|---|---|
1 | TBD | TBD |
Edge Cases
Case | Addressed yet? | |
---|---|---|
1 | TBD | TBD |
Design
Group Settings
Group License Settings |
---|
Project Settings
Project License Settings |
---|
Project License Settings all group default | Project License Settings 1 license overriden |
---|---|
Black opacity will not be in the experience, just used to show which license was changed |
In MR
MR Widget |
---|
License with Group Rule | License without group rule | New license |
---|---|---|
Badges
Usage | Approved | Blacklisted | New License | Group Level Setting | No group rule set |
---|---|---|---|---|---|
Minimal of information req. | |||||
More information req. | |||||
Maximum information req. |
Brief Roadmap
MVC | MVC with Group enforcement | Future |
---|---|---|
Add group license setting page | Add Override settings to Group level license page | Dashboard showing which licenses exist at the group level along with override status |
Auto import group licenses into projects when defined at group level | IF licenses are enforced, block changes at the project level. | Instance level enforcement and settings |
Project dropdown add Group default option |
Existing licenses can no longer be changed in the MR | |
Licenses that exist at the Group level cannot be removed at the project level | Add approver when new licenses are detected in MR | |
MR more info modal shows if a license exists at the group level | ||
MR shows group icon when license exists at group level |
Edited by 🤖 GitLab Bot 🤖