Confirmed users
67
edits
(Add bug number to intent to ship email) |
No edit summary |
||
| Line 6: | Line 6: | ||
It isn't always desirable to turn on a feature for all users at once, or exactly when a new version of Firefox is released. In this case, it is common to make the feature controllable via a flag, or a switch that can be used to turn the feature on and off. In Firefox this is generally a preference. There are then several mechanism we can use to turn this flag on to enable the feature off-train, Normandy pref rollout is a simple, safe, and featureful way. | It isn't always desirable to turn on a feature for all users at once, or exactly when a new version of Firefox is released. In this case, it is common to make the feature controllable via a flag, or a switch that can be used to turn the feature on and off. In Firefox this is generally a preference. There are then several mechanism we can use to turn this flag on to enable the feature off-train, Normandy pref rollout is a simple, safe, and featureful way. | ||
== Check list == | |||
If you want to make a change to Firefox via preference rollout, here are the things you must do. | |||
* Make a feature, controlled by a preference, and land it in the tree | |||
* Have someone from the Normandy team look at the feature, to check for compatibility | |||
* Get the feature and preference tested by PI | |||
* Decide what metrics you will use to determine success | |||
* Decide a timeline for deployment | |||
* File a rollout bug | |||
* Send an intent-to-ship email, see below for details on its content | |||
* Get approval from Release Engineering | |||
* Create a Normandy recipe | |||
* Get Normandy recipe approved | |||
* Ship it! | |||
== Capabilities of Normandy Pref Rollout == | == Capabilities of Normandy Pref Rollout == | ||
| Line 49: | Line 65: | ||
* Feature flags are not a way to skip the trains. | * Feature flags are not a way to skip the trains. | ||
* Feature flagging is not a replacement for thorough testing. | * Feature flagging is not a replacement for thorough testing. | ||
* Normandy pref rollout is not | * Normandy pref rollout is not generally compatible with preferences that require a browser restart. | ||
== Intent to Ship == | == Intent to Ship == | ||
| Line 79: | Line 76: | ||
* The targeted audience, including channel and version | * The targeted audience, including channel and version | ||
* What would cause the feature to be rolled back | * What would cause the feature to be rolled back | ||
== Rollback == | == Rollback == | ||