Keep the gl_namespace_name in sync with the namespace name in GitLab.com
Problem
When a user changes the name of their namespace in GitLab.com, the subscription object in CustomersDot gets out of sync because there's no notice of that change. In CustomersDot the customer still sees the outdated name of the namespace in their subscriptions page.
It's only after a change in the linked namespace for the subscription that the subscription object gets the updated gl_namespace_name
.
Proposal
Make a call to CustomersDot when the namespace name changes in GitLab.com to update the gl_namespace_name
of the subscription.
Result
Both gl_namespace_name
and gl_namespace_id
are kept up to date in GitLab.com, CustomersDot and Zuora (through the functionality implemented in https://gitlab.com/gitlab-org/customers-gitlab-com/-/issues/1989)
Delivery plan
This logic is part of a bigger picture
-
CustomersDot: Add endpoint that receives a namespace(id, name) and updates the namespace name for all the orders associated to this namespace: https://gitlab.com/gitlab-org/customers-gitlab-com/-/merge_requests/3797 -
GitLab: Add sync capabilities every time the name for a namespace with an associated subscription is updated behind a feature flag: gitlab!69896 (merged) -
Create the enable feature flag issue: gitlab#341056 (closed)
Availability & Testing
If possible, we should create a test to mock the related APIs and test the data sent to the APIs. Let's test the synchronicity between these fields and ensure that they stay in sync.