• Stars
    star
    61
  • Rank 497,051 (Top 10 %)
  • Language
    Ruby
  • Created about 13 years ago
  • Updated about 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Configus helps you easily manage environment specific settings

Configus

Gem Version Build Status Dependency Status Code Climate Coverage Status

Summary

Configus helps you easily manage environment specific settings

Installing

Add this to your Gemfile:

gem "configus"

Examples

Definition

Configus.build :development do # set current environment
  env :production do
    site_name 'Example'
    web do
      domain   'example.com'
      protocol 'https'
      port     80
      uri      -> { "#{protocol}://#{domain}:#{port}" }
    end
    site_uri   -> { web.uri }
    email do
      pop do
        address 'pop.example.com'
        port    110
      end
      smtp do
        address 'smtp.example.com'
        port    25
      end
    end
  end

  env :development, :parent => :production do
    web do
      domain   'localhost'
      protocol 'http'
      port      9292
    end
    email do
      smtp do
        address 'smpt.text.example.com'
      end
    end
  end
end

Usage

configus.site_name      # => 'Example'
configus.web.uri        # => 'https://example.com:80'
configus.site_uri       # => 'https://example.com:80'
configus.email.pop.port # => 110

Rails

define your config in lib/configus.rb

Configus.build Rails.env do
  # settings
end

reload

# config/environments/development.rb
ActionDispatch::Reloader.to_prepare do
  load Rails.root.join('lib/configus.rb')
end

Similar