Add new plan to Gitlab SaaS
What does this MR do and why?
Resolves: https://gitlab.com/gitlab-org/customers-gitlab-com/-/issues/9029+.
Part of work for https://gitlab.com/groups/gitlab-org/-/epics/12681+.
As we have configured the new plan in Zuora and CustomersDot (https://gitlab.com/gitlab-org/customers-gitlab-com/-/merge_requests/9447), this MR adds the plan to the Plan
model, so it can be accessed in Gitlab SaaS as well.
Please see https://gitlab.com/gitlab-org/customers-gitlab-com/-/merge_requests/9447+ for more context.
Project work map
Relevant MRs in ascending chronological order | Status |
---|---|
https://gitlab.com/gitlab-org/customers-gitlab-com/-/merge_requests/9447+ |
|
https://gitlab.com/gitlab-org/customers-gitlab-com/-/merge_requests/9681+ |
|
Add new plan to Gitlab SaaS (!148045 - closed) |
|
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 |
---|---|
Screen_Recording_2024-04-10_at_16.47.39 |
|
How to set up and validate locally
Pre-test preparation
- Pull the
mtimoustafa/9029-ff-protect-basic-plan
branch in CustomersDot and launch the application. - In the CDot Rails console (
bundle exec rails c
), runIronBank::LocalRecords.export
. - Turn on the CustomersDot <code data-sourcepos="52:31-52:53">ramon_plan_availability</code> feature flag feature flag.
- Apply the following patch to disable caching plan fetch requests to CustomersDot: no_caching.diff
- Restart CustomersDot.
- Launch GDK and ZSim.
- In the
gitlab/
GDK directory, runbundle exec rails db:migrate
to add the new plan to thePlan
model.
Testing steps
- Create a new Gitlab.com group.
- Navigate to the billing page (
http://gdk.test:3000/groups/testcdot9447-3group2/-/billings
) and select theUpgrade to Premium
button to go to the purchase page. - Ensure the
GitLab plan
dropdown now showsGitLab Basic - 1 Year
as an option. - Purchase the Basic plan with any number of seats.
- Navigate to CustomersDot and confirm there is a Basic plan subscription for the group.
- Wait for the GDK billing page to update and confirm that the group is on the Basic plan.