Module: Leeroy::Helpers::Env

Includes:
Leeroy::Helpers
Included in:
Env, Polling, Task, Task::Base
Defined in:
lib/leeroy/helpers/env.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#envObject (readonly)

Returns the value of attribute env.



9
10
11
# File 'lib/leeroy/helpers/env.rb', line 9

def env
  @env
end

Instance Method Details

#checkEnv(param, check = lambda { |x| ! x.nil? }, errmsg = "You must provide #{param} in the environment.", env = self.env) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/leeroy/helpers/env.rb', line 11

def checkEnv(param, check = lambda { |x| ! x.nil? }, errmsg = "You must provide #{param} in the environment.", env = self.env)
  begin
    logger.debug "checking for '#{param}' in environment"

    # get param from env
    candidate = env.fetch(param, nil)
    logger.debug "candidate: #{candidate}"

    # check it against the check
    check_passed = check.call(candidate)
    logger.debug "check_passed: #{check_passed}"

    if check_passed
      candidate
    else
      raise errmsg
    end

  rescue NoMethodError => e
    logger.error "unable to read environment! env: #{env.inspect}"
    raise e

  rescue StandardError => e
    raise e
  end
end