class Serverkit::Actions::Check

Public Instance Methods

run() click to toggle source

Check if all backends have ideal states, then exit with exit-code 0 or 1

# File lib/serverkit/actions/check.rb, line 7
def run
  if check_resources
    exit
  else
    exit(1)
  end
end

Private Instance Methods

check_resources() click to toggle source

@return [true, false] True if all backends have ideal states

# File lib/serverkit/actions/check.rb, line 18
def check_resources
  backends.map do |backend|
    Thread.new do
      recipe.resources.map(&:clone).map do |resource|
        resource.backend = backend
        resource.run_check
        backend.logger.report_check_result_of(resource)
        resource
      end
    end
  end.map(&:value).flatten.all?(&:successful?)
end