ruby-on-rails ruby rubygems sinatra

ruby on rails - Interruptores de funciones de rubí/Aletas de funciones



ruby-on-rails rubygems (5)

Me he inspirado en cómo tanto Flickr como Disqus utilizan los conmutadores de funciones. Ambos bloguearon sobre ellos y cómo trabajan en sus dos blogs de desarrollo.

Me preguntaba si faltaba una gema de Ruby o si alguien sabe cómo hacer esto en Ruby. Si no hay nada, espero hacerlo por mi cuenta y liberarlo en la naturaleza. Pero solo quería preguntar aquí porque no he podido encontrar nada remotamente similar a lo que lograron tanto Flickr como Disqus.




También recomiendo encarecidamente el patrón. No hay gemas que yo sepa, pero es bastante fácil de hacer. Un consejo: incluye la posibilidad de establecer automáticamente el estado inicial en encendido o apagado:

feature_flag(''third_party_tool'', :default => true) do ... # this is on by default end

Esto le ahorrará dolores de cabeza en el momento del despliegue.


Verifique el rollout si ya está utilizando Redis.


ruby_flipper todas las gemas de aletas disponibles ahora (marzo de 2015) y elegí el ruby_flipper

Sí, es más antiguo que otros, pero te permite usar bloques y argumentos para calcular el estado de la función, y es muy simple.

No requiere redis, ninguna base de datos o cualquier otra cosa.

Para la configuración de varios servidores utilizo variables ENV. En realidad, es posible usar cualquier cosa ya que no lo limita (como lo hacen las otras opciones aquí).

Lo único que no me gusta es que ruby_flipper contamine el objeto con sus métodos, pero eso es fácil de resolver.

Para resumir: si necesita una solución liviana, configurable y no limitada, voto por esta simple joya.

Otros son buenos en un área específica, esta es buena para empezar.

Otro buen candidato es el rollout mencionado en la respuesta aceptada.