ualbertalib/jupiter#1897 - decision to use flipper gem ualbertalib/jupiter#1948 implements feature flags in Jupiter
gem 'flipper', '~> 1.3.4' # Feature flags for Ruby
gem 'flipper-active_record', '~> 1.3.4' # Store feature flags in ActiveRecord
gem 'flipper-ui', '~> 1.3.4' # UI for feature flags
We're not using flippercloud. We're self hosting. We don't need any of the paid features with this setup.
Suppose you have some code that does a thing
do_a_thing
Now you want to change the behaviour, but you want the ability to turn it off/on and give that ability to a user without code-churn and new deployments. Suppose the new behaviour is
do_another_thing
So we introduce conditional logic
if Flipper.enabled?(:another_thing)
do_another_thing
else
do_a_thing
end