Sha256: 68287bcbfdeaec0c099aee6d6c998247a528cfeabde2afbb798f58705e208b36

Contents?: true

Size: 1.03 KB

Versions: 34

Compression:

Stored size: 1.03 KB

Contents

module Fog
  module Compute
    class Vsphere
      class Real

        def vm_destroy(options = {})
          raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'

          # Find the VM Object
          search_filter = { :uuid => options['instance_uuid'], 'vmSearch' => true, 'instanceUuid' => true }
          vm_mob_ref = @connection.searchIndex.FindAllByUuid(search_filter).first

          unless vm_mob_ref.kind_of? RbVmomi::VIM::VirtualMachine
            raise Fog::Vsphere::Errors::NotFound,
              "Could not find VirtualMachine with instance uuid #{options['instance_uuid']}"
          end
          task = vm_mob_ref.Destroy_Task
          task.wait_for_completion
          { 'task_state' => task.info.state }
        end

      end

      class Mock

        def vm_destroy(options = {})
          raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
          { 'task_state' => 'success' }
        end

      end
    end
  end
end

Version data entries

34 entries across 34 versions & 11 rubygems

Version Path
brightbox-cli-0.17.2 lib/brightbox-cli/vendor/fog/lib/fog/vsphere/requests/compute/vm_destroy.rb
brightbox-cli-0.17.1 lib/brightbox-cli/vendor/fog/lib/fog/vsphere/requests/compute/vm_destroy.rb
brightbox-cli-0.17.0 lib/brightbox-cli/vendor/fog/lib/fog/vsphere/requests/compute/vm_destroy.rb
fog-1.1.2 lib/fog/vsphere/requests/compute/vm_destroy.rb
fog_tractical-1.1.4 lib/fog/vsphere/requests/compute/vm_destroy.rb
fog_tractical-1.1.3 lib/fog/vsphere/requests/compute/vm_destroy.rb
brightbox-cli-0.16.0 lib/brightbox-cli/vendor/fog/lib/fog/vsphere/requests/compute/vm_destroy.rb
fog-1.1.1 lib/fog/vsphere/requests/compute/vm_destroy.rb
fog-1.1.0 lib/fog/vsphere/requests/compute/vm_destroy.rb
brightbox-cli-0.15.0 lib/brightbox-cli/vendor/fog/lib/fog/vsphere/requests/compute/vm_destroy.rb
tag-fog-1.0.1 lib/fog/vsphere/requests/compute/vm_destroy.rb
brightbox-cli-0.14.1 lib/brightbox-cli/vendor/fog/lib/fog/vsphere/requests/compute/vm_destroy.rb
brightbox-cli-0.14.0 lib/brightbox-cli/vendor/fog/lib/fog/vsphere/requests/compute/vm_destroy.rb
fog-1.0.0 lib/fog/vsphere/requests/compute/vm_destroy.rb