class Chef::Provider::OneImage

Implementation of Provider class.

Attributes

image[R]

Public Instance Methods

action_handler() click to toggle source
# File lib/chef/provider/one_image.rb, line 40
def action_handler
  @action_handler ||= Chef::Provisioning::ChefProviderActionHandler.new(self)
end
exists?() click to toggle source
# File lib/chef/provider/one_image.rb, line 44
def exists?
  new_driver = driver
  @image = new_driver.one.get_resource(:image, :name => @new_resource.name)
  !@image.nil?
end
load_current_resource() click to toggle source
# File lib/chef/provider/one_image.rb, line 37
def load_current_resource
end
whyrun_supported?() click to toggle source
# File lib/chef/provider/one_image.rb, line 33
def whyrun_supported?
  true
end

Protected Instance Methods

current_driver() click to toggle source
# File lib/chef/provider/one_image.rb, line 352
def current_driver
  run_context.chef_provisioning.driver_for(run_context.chef_provisioning.current_driver) if run_context.chef_provisioning.current_driver
end
driver() click to toggle source
# File lib/chef/provider/one_image.rb, line 340
def driver
  if current_driver && current_driver.driver_url != new_driver.driver_url
    fail "Cannot move '#{machine_spec.name}' from #{current_driver.driver_url} to #{new_driver.driver_url}: machine moving is not supported.  Destroy and recreate."
  end
  fail "Driver not specified for one_image #{new_resource.name}" unless new_driver
  new_driver
end
new_driver() click to toggle source
# File lib/chef/provider/one_image.rb, line 348
def new_driver
  run_context.chef_provisioning.driver_for(new_resource.driver)
end