Skip to content

Experiment: Expose free users to MR approvals feature

What does this MR do and why?

Fulfills the brief of the experiment; it exposes eligible users to the MR approvals feature by means of a promo.

All new functionality & UI is behind an experiment feature flag: promote_mr_approvals_in_free.

Eligible users are defined as those who are admins of top-level namespaces which are eligible for trials (that is, they are currently on the “Free” plan and have not already had a trial).

Note that we can be reasonably certain that only free users will see the promo because the merge_request_approvers feature is available to all non-free licenses (starter, premium, & ultimate), and we only render the promotion if that feature is not available (that is, the current project is not part of a starter, premium, or ultimate licensed namespace).

Screenshots or screen recordings

Screenshots

Before After
image image

Screen recording

View the screen recording on the GitLab YouTube Unfiltered account.

How to set up and validate locally

  1. Turn on billing features in the app (via rails console)
    ApplicationSetting.first.update(check_namespace_plan: true)
  2. Enable the experiment fully (via rails console)
    Feature.enable(:promote_mr_approvals_in_free)
  3. Create a group & a project with a repo (initialize with a README file)
  4. Make an edit to that project’s repo (in the Web IDE, for example)
  5. Commit the change, checking the “Create a new branch” & “Start a new merge request” options
  6. On the New Merge Request page, you should see the MR Approvals promo underneath the Reviewer section
    • Clicking the “Learn more about merge request approval” link will take you to the documentation (in a new browser tab)
    • Clicking the “Try it for free” button will take you to the SaaS trial signup flow (in a new browser tab)
      • Upon completion of the trial signup flow, you will not be taken back to the new MR form you were previously working on. This is an intentional part of this MVC experiment & why we open up that flow in a new browser tab.
  7. You can also submit the merge request and then edit it to see the same promo on the edit page.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #224185 (closed)

Edited by Dallas Reedy

Merge request reports