MultiArcana

Rails applications have many secret strings, and storing them in a public revision control system is a security issue. This gem simplifies secret management by storing all secrets in a single file, which is then copied into place using Capistrano or other deployment tools.

Usage:

gem 'multa_arcana'

Create a file config/secrets.yml to contain your secrets:

db_username: your-username-here
db_password: your-db-password-here
secret_token: klsjdklajd...2342342ds9u

Then, in any place where you normally use a secret, retrieve it:

config/initializers/secret_token.rb

Thing::Application.config.secret_token = MultaArcana::secret_for(:secret_token)

config/database.yml

production:
  adapter: postgresql
  encoding: unicode
  database: thing_production
  pool: 5
  host: 127.0.0.1
  username: <%= MultaArcana::secret_for(:db_username) %>
  password: <%= MultaArcana::secret_for(:db_password) %>