class Bosh::Director::Jobs::CloudCheck::Scan

Public Class Methods

job_type() click to toggle source
# File lib/bosh/director/jobs/cloud_check/scan.rb, line 11
def self.job_type
  :cck_scan
end
new(deployment_name) click to toggle source

@param [String] deployment_name Deployment name

# File lib/bosh/director/jobs/cloud_check/scan.rb, line 16
def initialize(deployment_name)
  @deployment_manager = Api::DeploymentManager.new
  @deployment = @deployment_manager.find_by_name(deployment_name)
end

Public Instance Methods

perform() click to toggle source
# File lib/bosh/director/jobs/cloud_check/scan.rb, line 21
def perform
  begin
    with_deployment_lock(@deployment, :timeout => 0) do
      scanner = ProblemScanner::Scanner.new(@deployment)
      scanner.reset
      scanner.scan_vms
      scanner.scan_disks

      "scan complete"
    end
  rescue Lock::TimeoutError
    raise "Unable to get deployment lock, maybe a deployment is in progress. Try again later."
  end
end