No release in over 3 years
Low commit activity in last 3 years
There's a lot of open issues
A UI for James Golick's rollout gem
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

> 1.0.0
 Project Readme

RolloutUI: A slick way to rollout features in your web app.

What does it do?

RolloutUI provides a zero-configuration user interface for James Golick's rollout. RolloutUI auto-detects features defined in rollout in your application. It allows you to release features to groups, users or a percentage of your userbase through a nice interface rather than digging around in the console or modifying redis directly.

It looks something like this:

RolloutUI

Installing RolloutUI

First, get rollout set up and running on your app and define at least one feature.

Then you're ready to use RolloutUI.

Add it to your gemfile:

gem "rollout_ui"

Wrap your rollout instance:

$rollout = Rollout.new($redis)
RolloutUi.wrap($rollout)

Rails 3.1

In your application.rb file, require the rollout engine:

require "rollout_ui/engine"

Mount the Rails engine in your routes.rb file:

mount RolloutUi::Engine => "/rollout"

Other

Run the sinatra app. You can either run it as it's own app, or run it in tandom with other rack apps. Example: using Rack's URLMap in your config.ru:

run Rack::URLMap.new \
  "/" => Your::App.new,
  "/rollout" => RolloutUi::Server.new

Protecting the sinatra app with HTTP basic auth is probably a good idea. Put this somewhere before the URLMap in your config.ru:

RolloutUi::Server.use Rack::Auth::Basic do |username, password|
  username == '<some username>' && password == '<some password>'
end

Resources

Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests for it. This is important so I don't break it in a future version unintentionally.
  • Send me a pull request.

Thanks

  • Thanks to James Golick for the great rollout gem.
  • Thanks to ChallengePost for sponsoring additional development and supporting open sourcing it from the start.
  • Thanks to Holly Tiwari for the design!