Hood is currently in alpha development. Our feature-set isn't fully developed, our specs are weak, and there are probably bugs.
Hood is to enviroment variables as bundler is to gems. To put it simply, we have the following goals:
- Serve as a means to document all enviroment variables for a given Ruby or Rails project.
- Give developers an easy way to ensure the presence of required variables
- Streamline the process of bootstrapping a new environment
Hood uses something called an "Envfile" to define environment variables. It uses a DSL (Domain Specific Language) similar to Bundler's to do so:
env "GOOGLE_MAPS_API_KEY" env "REDIS_URI", :default => "localhost:6379" env "SALES_TAX", :description => "Current sales tax in Los Angeles (eg. 0.0875)" prefix "DB_" do env "PASSWORD" env "USER" env "DATABASE" env "SOCKET" env "ADAPTER" end
:descriptionIf the desired value isn't obvious, you can include a description
:optionalPass true to avoid throwing a runtime error when the app starts and this var isn't present
:defaultA pre-defined default value for this var
Hood is tested against the following Rubies: MRI 1.8.7, MRI 1.9.2, MRI 1.9.3, Rubinius 2.0, and JRuby.
Hood is released under the MIT license. See the LICENSE file for more info.