Add enable duo banner for .com

What does this MR do and why?

What

Add enable duo banner component and display the banner on the top level group page, as well as the GitLab Duo settings page

Why

There is a lot of context and discussion in https://gitlab.com/gitlab-org/gitlab/-/issues/530958

References

See discussions in https://gitlab.com/gitlab-org/gitlab/-/issues/530958 for additional context

Screenshots or screen recordings

Group Show Page
image
GitLab Duo Settings Page
image
Confirmation Modal
image
Dismissing Banner Doesn't Affect Other Pages Enabling Duo Core Affects Display Conditions
2025-04-22_16.35.41 2025-04-22_16.36.51

How to set up and validate locally

  1. Simulate GDK as SaaS
  2. In rails console enable the feature flag
    Feature.enable(:allow_duo_base_access)
  3. Visit a group's main page OR visit a group's duo settings page with the following qualifications:
    • Paid
    • User is an owner or admin
    • duo_core_features_enabled isn't already enabled (this is a namespace setting - if you need to disable it you can run: group = Group.find(group_id); group.namespace_settings.update(duo_core_features_enabled: false);)
    • Banner hasn't already been dismissed
  4. Dismissing the banner on either page should not dismiss the other pages banner
  5. Enabling the feature via the banner should dismiss the banner and not show in either location

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #530958

Edited by Doug Stull

Merge request reports

Loading