Improve top-level groups `Settings > GitLab Duo` page
What does this MR do and why?
This improves upon recent work that adds the Settings > GitLab Duo standalone page for managing Code Suggestions seat assignments.
-
6bc00e89: Add title and subtitle on the standalone GitLab Duo settings page
-
5c061271: Update redirects to groups'
Settings > Usage quotas > GitLab DuoThis updates a few redirects that previously pointed to
Settings > Usage quotas > GitLab Duoin top-level groups. We now have a dedicated page for managing Code Suggestions seat assignments, so we should redirect users there when they purchase a license, or start a trial etc. -
0f4059a2: Add internal events tracking to Code Suggestions usage app
This implements internal events tracking for a few actions in the Code Suggestions usage app:
click_gitlab_duo_tab_on_usage_quotasenable_gitlab_duo_pro_for_seatdisable_gitlab_duo_pro_for_seatbulk_enable_gitlab_duo_pro_for_seatsbulk_disable_gitlab_duo_pro_for_seats
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
| Before | After |
|---|---|
![]() |
How to set up and validate locally
- Enable the
:hamilton_seat_managementfeature flag:echo "Feature.enable(:hamilton_seat_management)" | rails c. - Enable the
:gitlab_duo_usage_menu_itemfeature flag:echo "Feature.enable(:gitlab_duo_usage_menu_item)" | rails c. - Enable the
:gitlab_com_duo_pro_bulk_user_assignmentfeature flag:echo "Feature.enable(:gitlab_com_duo_pro_bulk_user_assignment)" | rails c. - Run your GDK in SaaS mode: https://docs.gitlab.com/ee/development/ee_features.html#simulate-a-saas-instance.
- Navigate to a top-level group. There should be a
Setting > GitLab Duomenu item that brings to a dedicated page to manage the feature's usage. - To test the events tracking, navigate the the groups
Setting > Usage quotaspage and perform the following actions:- Click on the
GitLab Duotab. - Assign/un-asign a seat using a toggle
- Assign multiple seats by checking a few boxes in the users list, then clicking on
Assign seat. - Un-assign multiple seats by checking a few boxes in the users list, then clicking on
Remove seat.
- Click on the
Related to #464019 (closed) & #468337 (closed)
