Remove the `:geo_nodes_beta` feature flag
What
Remove the :geo_nodes_beta
feature flag, redirect route temporarily, and remove legacy code.
Owners
- Team: @geo-team
- Most appropriate slack channel to reach out to:
#g_geo
- Best individual to reach out to: @zcuddy
Expectations
What are we expecting to happen?
Expectation is after the Feature Flag validations are done and #287979 (closed) has been closed we will be ready for the cutover. This will entail:
- Deleting all the legacy
geo_nodes
namespace UI code. - Redirecting the
admin/geo/nodes
route to thegeo_nodes_beta
UI temporarily => #327645 (closed) - Remove feature flag.
What might happen if this goes wrong?
If something goes wrong, users may start seeing incorrect data representation of their Geo Nodes. We plan on doing 2 rounds of regression testing as well as knowledge that in the case of emergency Geo can be managed from the command line and all the customer's backend services will be unaffected.
What can we monitor to detect problems with this?
We plan to implement opportunities for user feedback from our Geo customers.
Beta groups/projects
If applicable, any groups/projects that are happy to have this feature turned on early. Some organizations may wish to test big changes they are interested in with a small subset of users ahead of time for example.
-
gitlab-org/gitlab
project
Roll Out Steps
-
Confirm that QA tests pass with the feature flag enabled (if you're unsure how, contact the relevant stable counterpart in the Quality department) -
Enable on staging ( /chatops run feature set feature_name true --staging
) -
Test on staging -
Ensure that documentation has been updated -
Enable on GitLab.com for individual groups/projects listed above and verify behaviour ( /chatops run feature set --project=gitlab-org/gitlab feature_name true
) -
Coordinate a time to enable the flag with the SRE oncall and release managers - In
#production
mention@sre-oncall
and@release-managers
. Once an SRE on call and Release Manager on call confirm, you can proceed with the rollout
- In
-
Announce on the issue an estimated time this will be enabled on GitLab.com -
Enable on GitLab.com by running chatops command in #production
(/chatops run feature set feature_name true
) -
Cross post chatops Slack command to #support_gitlab-com
(more guidance when this is necessary in the dev docs) and in your team channel -
Announce on the issue that the flag has been enabled -
Remove feature flag and add changelog entry -
After the flag removal is deployed, clean up the feature flag by running chatops command in #production
channel
Rollback Steps
-
This feature can be disabled by running the following Chatops command:
/chatops run feature set --project=gitlab-org/gitlab feature_name false