Module: Philiprehberger::EnvValidator

Defined in:
lib/philiprehberger/env_validator.rb,
lib/philiprehberger/env_validator/result.rb,
lib/philiprehberger/env_validator/schema.rb,
lib/philiprehberger/env_validator/version.rb,
lib/philiprehberger/env_validator/validator.rb

Defined Under Namespace

Classes: CastError, Error, Result, Schema, ValidationError, Validator

Constant Summary collapse

VERSION =
'0.4.0'

Class Method Summary collapse

Class Method Details

.define(env: ENV, prefix: nil) {|schema| ... } ⇒ Result

Define and validate environment variables.

Parameters:

  • env (Hash) (defaults to: ENV)

    the environment hash (default: ENV)

  • prefix (String, nil) (defaults to: nil)

    optional prefix prepended to variable names during lookup

Yields:

  • (schema)

    configure the schema

Yield Parameters:

Returns:

  • (Result)

    validated values

Raises:



26
27
28
29
30
# File 'lib/philiprehberger/env_validator.rb', line 26

def self.define(env: ENV, prefix: nil, &block)
  schema = Schema.new
  schema.instance_eval(&block)
  Validator.new(schema, env: env, prefix: prefix).validate!
end