Manual Sync: Button and connection with backend
What does this MR do?
This is a 4 steps MR, tackling gitlab-org/gitlab#325156. The backend implementation was already done but given the frontend requirements have changed, there's gonna be some updates from the backend as well.
1 | frontend to add the alerts and display logic | !59647 (merged) |
2 | frontend to show the sync button and connect with backend |
|
3 | frontend write specs | tbd |
4 | backend to modify the response from the sync endpoint | !59532 (merged) |
The feature is behind an Application Setting and it's not released nor documented. To test it locally, see the following steps.
A feature flag is not used because this feature is for self-managed instances
To test the changes locally
-
Delete any previous license you might have
-
Make sure you have set the following vars
-
GITLAB_LICENSE_MODE
is set totest
-
CUSTOMER_PORTAL_URL
is set tohttps://customers.stg.gitlab.com
-
-
Use Rails console to run
ApplicationSetting.current.update(cloud_license_enabled: true)
-
Navigate to
admin/cloud_license
-
Use the following activation code:
Lx6XhhLR1jSj2aacuZFRP8Mf
-
To test the failing scenario, simply block the network request to
sync_seat_link
Note: ~~the backend part is pending review. The interaction between the 2 will be covered by feature specs~~.
Screenshots (strongly suggested)
Cloud License | Legacy License |
---|---|
Sync Subscription Success | Sync Subscription Success Dismiss |
---|---|
Screen_Recording_2021-04-21_at_07.39.16 | Screen_Recording_2021-04-21_at_07.39.30 |
Sync Subscription Failure | Sync Subscription Retry (and Success) |
---|---|
Screen_Recording_2021-04-21_at_07.39.55 | Screen_Recording_2021-04-21_at_07.40.12 |
Does this MR meet the acceptance criteria?
Conformity
-
📋 Does this MR need a changelog?-
I have included a changelog entry. -
I have not included a changelog entry because the feature is not released.
-
- [-] Documentation (if required)
-
Code review guidelines -
Merge request performance guidelines -
Style guides - [-] Database guides
-
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. - [-] Tested in all supported browsers
- [-] Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
- [-] 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