[Feature flag] Rollout of `fetch_remote_params`
What
Remove the :fetch_remote_params feature flag.
Owners
- Team: groupgitaly
- Most appropriate slack channel to reach out to:
#g_create_gitaly - Best individual to reach out to: @pks-t
Expectations
What are we expecting to happen?
Gitaly has been introducing a new way to fetch from an URL into a target repository which does not require the caller to first ensure that a remote exists. The feature flag is switching over from the old way of doing things to the new way, which should result in a performance improvement given that neither add_remote() nor remove_remote() need to be called anymore.
What might happen if this goes wrong?
Fetching into repositories may fail. This could result in multiple issues:
- fetches fail altogether
- fetched refs may end up updating the wrong set of refs
- mirroring fails
- GitHub imports fail
What can we monitor to detect problems with this?
- FetchRemote RPC
Roll Out Steps
-
Enable on staging ( /chatops run feature set fetch_remote_params 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 --group=gitlab-org fetch_remote_params true) -
Coordinate a time to enable the flag with the SRE oncall and release managers - In
#productionmention@sre-oncalland@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. Note: Once a feature rollout has started, it is not necessary to inform @sre-oncall/@release-managersat each stage of the gradual rollout. -
Enable on GitLab.com by running chatops command in #production(/chatops run feature set fetch_remote_params 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. Ensure that the feature flag definition YAML file has been removed in the same MR that is removing the feature flag from the code -
After the flag removal is deployed, clean up the feature flag by running chatops command in #productionchannel
Rollback Steps
-
This feature can be disabled by running the following Chatops command:
/chatops run feature set --project=gitlab-org/gitlab fetch_remote_params false
Edited by Patrick Steinhardt