I would appreciate review comments on https://dev.launchpad.net/LEP/FeatureFlags
---- goal state: Launchpad has a registry of configuration options that can be changed by admins through the web ui, without restarting Launchpad. As a Launchpad developer/operator I want to turn features on and off without a heavyweight deployment so that I can more adroitly test and deploy new features (A:B testing, long-running closed betas, etc) and so that I can recover from emergencies by cutting-off problem features As a Launchpad user I want you to tell me about impending downtime through the web ui so that I can I can plan not to be using Launchpad when it's offline/readonly. This is not a mechanism for general per-user configuration This is not a complete replacement for static configuration or other parts of the deployment process This only affects new code that specifically uses it; it doesn't magically affect existing code This may become a replacement for things that are currently done through SQL queries or configuration files This is site-wide not per-appserver. This does not yet replace the readonly-mode flag (implemented as a special file on disk) because it's special. This embraces "feature flags" and more, such as site-wide notifications. Scenarios: Dark launches (aka embargoes: land code first, turn it on later) Closed betas Scram switches (omg daily builds are killing us, make it stop) Soft/slow launch (let just a few users use it and see what happens) Site-wide notification Show an 'alpha', 'beta' or 'new!' badge next to a UI control, then later turn it off without a new rollout .... -- Martin _______________________________________________ Mailing list: https://launchpad.net/~launchpad-dev Post to : [email protected] Unsubscribe : https://launchpad.net/~launchpad-dev More help : https://help.launchpad.net/ListHelp

