Fetch storage plans for purchase flow
What does this MR do?
Fetch Storage
plan information for storage purchase flow. It's the first MR that starts implementation of the flow.
What is moved and why
The flow for CI Minutes and Storage will be very similar, so some preparational work was done in order to set foundation for future issues &5789 (closed)
-
vue_shared/purchase_flow
folder has all the components that could be reused forSubscription
,CI Minutes
andStorage
purchase flows -
buy_addons_shared/
folder has has all the components/utils that could be reused forCI Minutes
andStorage
purchase flows -
buy_minutes
andbuy_storage
folders have specific components that are unique for each flow
Relates to #327885 (closed)
Screenshots or Screencasts (strongly suggested)
Beware: there are still a lot of CI Minutes
labels on the /buy_storage
page. It will be addressed by future MRs. See Epic for details: &5789 (closed)
CI Minutes (didn't change) /buy_minutes
|
Storage (changed) /buy_storage
|
---|---|
How to setup and validate locally
- Run
rails c
- Run
Feature.enable(:new_route_storage_purchase)
to enable the feature flag for Storage flow - Run
Feature.enable(:new_route_ci_minutes_purchase)
to enable the feature flag for CI MInutes flow
Validate CI Minutes flow:
- Changes introduced in this MR should not change the current flow
- Navigate to http://localhost:3000/-/subscriptions/buy_minutes?selected_group=<id_of_an_existing_group> to verify it
Validate Storage flow:
- Navigate to http://localhost:3000/-/subscriptions/buy_storage?selected_group=<id_of_an_existing_group>
- You should see a page with data for
Storage
plan
Does this MR meet the acceptance criteria?
Conformity
-
I have included changelog trailers, or none are needed. (Does this MR need a changelog?) -
I have added/updated documentation, or it's not needed. (Is documentation required?) -
I have properly separated EE content from FOSS, or this MR is FOSS only. (Where should EE code go?) -
I have added information for database reviewers in the MR description, or it's not needed. (Does this MR have database related changes?) -
I have self-reviewed this MR per code review guidelines. -
This MR does not harm performance, or I have asked a reviewer to help assess the performance impact. (Merge request performance guidelines) -
I have followed the style guides. -
This change is backwards compatible across updates, or this does not apply.
Availability and Testing
-
I have added/updated tests following the Testing Guide, or it's not needed. (Consider all test levels. See the Test Planning Process.) -
I have tested this MR in all supported browsers, or it's not needed. -
I have informed the Infrastructure department of a default or new setting change per definition of done, or it's not needed.
Security
Does this MR contain changes to processing or storing of credentials or tokens, authorization and authentication methods or other items described in the security review guidelines? If not, then delete this Security section.
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team
Edited by Diana Zubova