Generalize Duo Pro copy to Duo in Duo management pages
What does this MR do and why?
Resolves the gitlab
part of https://gitlab.com/gitlab-org/gitlab/-/issues/464471+.
This MR further generalizes the Duo Pro
copy to Duo
, in the Gitlab.com Usage Quotas page (/groups/:group_id/-/usage_quotas#code-suggestions-usage-tab
) and the self-managed / Dedicated admin page (/admin/code_suggestions
).
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
Bulk Assignments
Case | Before | After |
---|---|---|
Confirm assignment (singular) | ||
Confirm assignment (plural) | ||
Confirm unassignment (singular) | ||
Confirm unassignment (plural) |
Errors
How to set up and validate locally
Gitlab.com
- Set up GDK and CDot.
- Turn on the
gitlab_com_duo_pro_bulk_user_assignment
feature flag in GDK. - Create a new user with a group, with a Premium or Ultimate subscription.
- Visit
/groups/:group_id/-/usage_quotas#code-suggestions-usage-tab
. - Confirm the "Introduce GitLab Duo" CTA copy has changed as expected.
- Purchase Duo Pro add-on seats for that group to access the rest of the Duo management UI.
- Confirm the bulk assignment confirmation copy has changed as expected.
- To test the error messages:
- Apply no_seats_available_error.patch, which will return an error for any individual seat assignment.
- Alter the
NO_SEATS_AVAILABLE_ERROR
value inusage_quotas/error_contants.js
to whichever error you'd like to test. - Assign a seat for any user to display the error message.
- Confirm all error messages changed as expected.
Self-managed / Dedicated
- Set up GDK and CDot.
- Turn on the
sm_duo_pro_bulk_user_assignment
feature flag in GDK. - Log in as the admin user, ensuring the instance has a Premium or Ultimate subsciption.
Follow the same steps as the Gitlab.com section, visiting
/admin/code_suggestions
instead in step 4.
Edited by Mohamed Moustafa