class Chef::Provider::OneVnet

Implementation of Provider class.

Attributes

current_vnet[R]

Public Instance Methods

action_handler() click to toggle source
# File lib/chef/provider/one_vnet.rb, line 33
def action_handler
  @action_handler ||= Chef::Provisioning::ChefProviderActionHandler.new(self)
end
exists?(filter) click to toggle source
# File lib/chef/provider/one_vnet.rb, line 37
def exists?(filter)
  new_driver = driver
  @current_vnet = new_driver.one.get_resource(:virtualnetwork, filter)
  Chef::Log.debug("VNET '#{filter}' exists: #{!@current_vnet.nil?}")
  !@current_vnet.nil?
end

Protected Instance Methods

current_driver() click to toggle source
# File lib/chef/provider/one_vnet.rb, line 115
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_vnet.rb, line 103
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_vnet #{new_resource.name}" unless new_driver
  new_driver
end
new_driver() click to toggle source
# File lib/chef/provider/one_vnet.rb, line 111
def new_driver
  run_context.chef_provisioning.driver_for(new_resource.driver)
end