class Heroku::Kensa::AllCheck

On Testing:

I've opted to not write tests for this
due to the simple nature it's currently in.
If this becomes more complex in even the
least amount, find me (blake) and I'll
help get tests in.

Public Instance Methods

call!() click to toggle source
# File lib/heroku/kensa/check.rb, line 504
def call!
  args = data[:args]
  run ManifestCheck, data
  run ProvisionCheck, data

  response = data[:provision_response]
  data.merge!(:id => response["id"])
  config = response["config"] || Hash.new

  if args
    screen.message "\n\n"
    screen.message "Starting #{args.first}..."
    screen.message "\n\n"

    run_in_env(config) { system(*args) }
    error("run exited abnormally, expected 0, got #{$?.to_i}") unless $?.to_i == 0

    screen.message "\n"
    screen.message "End of #{args.first}\n"
  end

  data[:plan] ||= 'foo'
  run PlanChangeCheck, data
  run DeprovisionCheck, data
end
run_in_env(env) { || ... } click to toggle source
# File lib/heroku/kensa/check.rb, line 530
def run_in_env(env)
  env.each {|key, value| ENV[key] = value }
  yield
  env.keys.each {|key| ENV.delete(key) }
end