In Files

Parent

Class/Module Index [+]

Quicksearch

Fog::Compute::Vsphere::Mock

Public Class Methods

new(options={}) click to toggle source
# File lib/fog/vsphere/compute.rb, line 178
def initialize(options={})
  require 'rbvmomi'
  @vsphere_username = options[:vsphere_username]
  @vsphere_password = 'REDACTED'
  @vsphere_server   = options[:vsphere_server]
  @vsphere_expected_pubkey_hash = options[:vsphere_expected_pubkey_hash]
  @vsphere_is_vcenter = true
  @vsphere_rev = '4.0'
end

Public Instance Methods

add_vm_interface(vmid, options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/modify_vm_interface.rb, line 44
def add_vm_interface(vmid, options = {})
  raise ArgumentError, "instance id is a required parameter" unless vmid
  raise ArgumentError, "interface is a required parameter" unless options and options[:interface]
  true
end
create_vm(attributes = { }) click to toggle source
# File lib/fog/vsphere/requests/compute/create_vm.rb, line 123
def create_vm attributes = { }
end
current_time() click to toggle source
# File lib/fog/vsphere/requests/compute/current_time.rb, line 15
def current_time
  { 'current_time' => Time.now.utc }
end
destroy_vm_interface(vmid, options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/modify_vm_interface.rb, line 50
def destroy_vm_interface(vmid, options = {})
  raise ArgumentError, "instance id is a required parameter" unless vmid
  raise ArgumentError, "interface is a required parameter" unless options and options[:interface]
  true
end
get_cluster(id) click to toggle source
# File lib/fog/vsphere/requests/compute/get_cluster.rb, line 20
def get_cluster(id)
end
get_datacenter(name) click to toggle source
# File lib/fog/vsphere/requests/compute/get_datacenter.rb, line 23
def get_datacenter name
  {:name => "Solutions", :status => "grey"}
end
get_datastore(name, datacenter_name) click to toggle source
# File lib/fog/vsphere/requests/compute/get_datastore.rb, line 25
def get_datastore(name, datacenter_name)
end
get_folder(path, filters = { }) click to toggle source
# File lib/fog/vsphere/requests/compute/get_folder.rb, line 69
def get_folder(path, filters = { })
end
get_folder_path(folder, root = nil) click to toggle source
# File lib/fog/vsphere/requests/compute/list_virtual_machines.rb, line 59
def get_folder_path(folder, root = nil)
  nil
end
get_network(id) click to toggle source
# File lib/fog/vsphere/requests/compute/get_network.rb, line 25
def get_network(id)
end
get_resource_pool(name, cluster_name, datacenter_name) click to toggle source
# File lib/fog/vsphere/requests/compute/get_resource_pool.rb, line 21
def get_resource_pool(name, cluster_name, datacenter_name)
end
get_template(id, datacenter_name = nil) click to toggle source
# File lib/fog/vsphere/requests/compute/get_template.rb, line 11
def get_template(id, datacenter_name = nil)
end
get_virtual_machine(id, datacenter_name = nil) click to toggle source
# File lib/fog/vsphere/requests/compute/get_virtual_machine.rb, line 29
def get_virtual_machine(id, datacenter_name = nil)
  case id
  when "5032c8a5-9c5e-ba7a-3804-832a03e16381", 'vm-715'
    { :resource_pool    => "Resources",
      :memory_mb        => 2196,
      :power_state      => "poweredOn",
      :mac_addresses    => { "Network adapter 1" => "00:50:56:b2:00:af" },
      :hostname         => "centos56gm.localdomain",
      :cpus             => 1,
      :connection_state => "connected",
      :mo_ref           => "vm-715",
      :overall_status   => "green",
      :datacenter       => "Solutions",
      :instance_uuid    => "5029c440-85ee-c2a1-e9dd-b63e39364603",
      :hypervisor       => "gunab.puppetlabs.lan",
      :guest_id         => "rhel6_64Guest",
      :cluster          => "virtlabcluster",
      :tools_state      => "toolsOk",
      :name             => "jefftest",
      :operatingsystem  => "Red Hat Enterprise Linux 6 (64-bit)",
      :path             => "/",
      :tools_version    => "guestToolsUnmanaged",
      :ipaddress        => "192.168.100.187",
      :id               => "5032c8a5-9c5e-ba7a-3804-832a03e16381",
      :uuid             => "42329da7-e8ab-29ec-1892-d6a4a964912a"
    }
  end
end
list_clusters(filters = { }) click to toggle source
# File lib/fog/vsphere/requests/compute/list_clusters.rb, line 32
def list_clusters(filters = { })
end
list_datacenters(filters = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/list_datacenters.rb, line 28
def list_datacenters filters = {}
  [ {:name => "Solutions", :status => "grey"}, {:name => "Solutions2", :status => "green" }]
end
list_datastores(datacenter_name) click to toggle source
# File lib/fog/vsphere/requests/compute/list_datastores.rb, line 34
def list_datastores(datacenter_name)
  []
end
list_networks(datacenter_name) click to toggle source
# File lib/fog/vsphere/requests/compute/list_networks.rb, line 32
def list_networks(datacenter_name)
  []
end
list_resource_pools(filters = { }) click to toggle source
# File lib/fog/vsphere/requests/compute/list_resource_pools.rb, line 34
def list_resource_pools(filters = { })
end
list_templates(filters = { }) click to toggle source
# File lib/fog/vsphere/requests/compute/list_templates.rb, line 44
def list_templates(filters = { })
end
list_virtual_machines(options = { }) click to toggle source
# File lib/fog/vsphere/requests/compute/list_virtual_machines.rb, line 63
def list_virtual_machines(options = { })
  case options['instance_uuid']
    when nil

      [
        { :resource_pool    => "Resources",
          :memory_mb        => 2196,
          :mac_addresses    => { "Network adapter 1" => "00:50:56:a9:00:28" },
          :power_state      => "poweredOn",
          :cpus             => 1,
          :hostname         => "dhcp75-197.virt.bos.redhat.com",
          :mo_ref           => "vm-562",
          :connection_state => "connected",
          :overall_status   => "green",
          :datacenter       => "Solutions",
          :volumes          =>
            [{
               :id        => "6000C29c-a47d-4cd9-5249-c371de775f06",
               :datastore => "Storage1",
               :mode      => "persistent",
               :size      => 8388608,
               :thin      => true,
               :name      => "Hard disk 1",
               :filename  => "[Storage1] rhel6-mfojtik/rhel6-mfojtik.vmdk",
               :size_gb   => 8
             }],
          :interfaces       =>
            [{ :mac     => "00:50:56:a9:00:28",
               :network => "VM Network",
               :name    => "Network adapter 1",
               :status  => "ok",
               :summary => "VM Network",
             }],
          :hypervisor       => "gunab.puppetlabs.lan",
          :guest_id         => "rhel6_64Guest",
          :tools_state      => "toolsOk",
          :cluster          => "Solutionscluster",
          :name             => "rhel64",
          :operatingsystem  => "Red Hat Enterprise Linux 6 (64-bit)",
          :uuid             => "4229f0e9-bfdc-d9a7-7bac-12070772e6dc",
          :path             => "/Datacenters/Solutions/vm",
          :id               => "5029c440-85ee-c2a1-e9dd-b63e39364603",
          :tools_version    => "guestToolsUnmanaged",
          :ipaddress        => "192.168.100.184",
        },
        { :resource_pool    => "Resources",
          :memory_mb        => 512,
          :power_state      => "poweredOn",
          :mac_addresses    => { "Network adapter 1" => "00:50:56:a9:00:00" },
          :hostname         => nil,
          :cpus             => 1,
          :connection_state => "connected",
          :mo_ref           => "vm-621",
          :overall_status   => "green",
          :datacenter       => "Solutions",
          :volumes          =>
            [{ :thin      => false,
               :size_gb   => 10,
               :datastore => "datastore1",
               :filename  => "[datastore1] i-1342439683/i-1342439683.vmdk",
               :size      => 10485762,
               :name      => "Hard disk 1",
               :mode      => "persistent",
               :id        => "6000C29b-f364-d073-8316-8e98ac0a0eae" }],
          :interfaces       =>
            [{  :summary => "VM Network",
               :mac     => "00:50:56:a9:00:00",
               :status  => "ok",
               :network => "VM Network",
               :name    => "Network adapter 1" }],
          :instance_uuid    => "502916a3-b42e-17c7-43ce-b3206e9524dc",
          :hypervisor       => "gunab.puppetlabs.lan",
          :guest_id         => nil,
          :cluster          => "Solutionscluster",
          :tools_state      => "toolsNotInstalled",
          :uuid             => "4229e0de-30cb-ceb2-21f9-4d8d8beabb52",
          :name             => "i-1342439683",
          :operatingsystem  => nil,
          :path             => "/",
          :tools_version    => "guestToolsNotInstalled",
          :id               => "502916a3-b42e-17c7-43ce-b3206e9524dc",
          :ipaddress        => nil }


      ]
    when '5032c8a5-9c5e-ba7a-3804-832a03e16381'
      [{ :resource_pool    => "Resources",
         :memory_mb        => 2196,
         :power_state      => "poweredOn",
         :mac_addresses    => { "Network adapter 1" => "00:50:56:b2:00:af" },
         :hostname         => "centos56gm.localdomain",
         :cpus             => 1,
         :connection_state => "connected",
         :mo_ref           => "vm-715",
         :overall_status   => "green",
         :datacenter       => "Solutions",
         :instance_uuid    => "5029c440-85ee-c2a1-e9dd-b63e39364603",
         :hypervisor       => "gunab.puppetlabs.lan",
         :guest_id         => "rhel6_64Guest",
         :cluster          => "Solutionscluster",
         :tools_state      => "toolsOk",
         :name             => "jefftest",
         :operatingsystem  => "Red Hat Enterprise Linux 6 (64-bit)",
         :path             => "/",
         :tools_version    => "guestToolsUnmanaged",
         :ipaddress        => "192.168.100.187",
         :id               => "5032c8a5-9c5e-ba7a-3804-832a03e16381",
         :uuid             => "42329da7-e8ab-29ec-1892-d6a4a964912a"

       }

      ]
    when 'does-not-exist-and-is-not-a-uuid', '50323f93-6835-1178-8b8f-9e2109890e1a'
      []
  end
end
list_vm_customfields(vm_id) click to toggle source
# File lib/fog/vsphere/requests/compute/list_vm_customvalues.rb, line 17
def list_vm_customfields(vm_id)
end
list_vm_interfaces(vm_id) click to toggle source
# File lib/fog/vsphere/requests/compute/list_vm_interfaces.rb, line 60
def list_vm_interfaces(vm_id)
end
list_vm_volumes(vm_id) click to toggle source
# File lib/fog/vsphere/requests/compute/list_vm_volumes.rb, line 46
def list_vm_volumes(vm_id)
end
vm_clone(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_clone.rb, line 290
def vm_clone(options = {})
  # Option handling TODO Needs better method of checking
  options = vm_clone_check_options(options)
  notfound = lambda { raise Fog::Compute::Vsphere::NotFound, "Could not find VM template" }
  list_virtual_machines.find(notfound) do |vm|
    vm[:name] == options['template_path'].split("/")[-1]
  end
  {
    'vm_ref'   => 'vm-123',
    'task_ref' => 'task-1234',
  }
end
vm_config_vnc(options = { }) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_config_vnc.rb, line 36
def vm_config_vnc(options = { })
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  { 'task_state' => 'success' }
end
vm_destroy(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_destroy.rb, line 19
def vm_destroy(options = {})
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  { 'task_state' => 'success' }
end
vm_get_vnc(uuid) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_config_vnc.rb, line 41
def vm_get_vnc uuid
  {:password => 'secret', :port => '5900', :enabled => 'true'}
end
vm_migrate(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_migrate.rb, line 28
def vm_migrate(options = {})
  priority = options['priority'].nil? ? 'defaultPriority' : options["priority"]
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  { 'task_state' => 'success' }
end
vm_power_off(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_power_off.rb, line 30
def vm_power_off(options = {})
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  {
    'task_state'     => "running",
    'power_off_type' => options['force'] ? 'cut_power' : 'shutdown_guest',
  }
end
vm_power_on(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_power_on.rb, line 22
def vm_power_on(options = {})
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  { 'task_state' => 'success' }
end
vm_reboot(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_reboot.rb, line 27
def vm_reboot(options = {})
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  { 'task_state'     => "running", 'reboot_type' => options['force'] ? 'reset_power' : 'reboot_guest' }
end
vm_reconfig_cpus(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb, line 14
def vm_reconfig_cpus(options = {})
  raise ArgumentError, "cpus is a required parameter" unless options.has_key? 'cpus'
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  hardware_spec={'numCPUs' => options['cpus']}
  vm_reconfig_hardware('instance_uuid' => options['instance_uuid'], 'hardware_spec' => hardware_spec )
end
vm_reconfig_hardware(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb, line 16
def vm_reconfig_hardware(options = {})
  raise ArgumentError, "hardware_spec is a required parameter" unless options.has_key? 'hardware_spec'
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  { 'task_state' => 'success' }
end
vm_reconfig_memory(options = {}) click to toggle source
# File lib/fog/vsphere/requests/compute/vm_reconfig_memory.rb, line 14
def vm_reconfig_memory(options = {})
  raise ArgumentError, "memory is a required parameter" unless options.has_key? 'memory'
  raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
  hardware_spec={'memoryMB' => options['memory']}
  vm_reconfig_hardware('instance_uuid' => options['instance_uuid'], 'hardware_spec' => hardware_spec )
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.