Sha256: 5c53b504b1b431952a46629e05b9a221287bf6367784af9e3e11cc34d02e96ea

Contents?: true

Size: 916 Bytes

Versions: 3

Compression:

Stored size: 916 Bytes

Contents

module Vault
  module Config
    extend self

    def remote_env(app, env)
      heroku = Heroku::API.new
      heroku.get_config_vars(app).body[env]
    end

    def core_follower_url
      remote_env('vault-core-follower', 'DATABASE_URL')
    end

    def env(key)
      ENV[key]
    end

    def env!(key)
      env(key) || raise("missing #{key}")
    end

    def production?
      env('RACK_ENV') == 'production'
    end

    def test?
      env('RACK_ENV') == 'test'
    end

    def app_name
      env("APP_NAME")
    end

    def port
      env!("PORT").to_i
    end

    def database_url(kind = '')
      kind = "#{kind}_".upcase unless kind.empty?
      env!("#{kind}DATABASE_URL")
    end

    def enable_ssl?
      !env('VAULT_TOOLS_DISABLE_SSL')
    end

    def int(key)
      env(key) ? env(key).to_i : nil
    end

    def sidekiq_concurrency
      int('SIDEKIQ_CONCURRENCY') || 25
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
vault-tools-0.3.6 lib/vault-tools/config.rb
vault-tools-0.3.5 lib/vault-tools/config.rb
vault-tools-0.3.4 lib/vault-tools/config.rb