Sha256: eb9fbb76c6b611a983b436e67573564771f2f74a3e714152d9890fe9c79bed18

Contents?: true

Size: 1.17 KB

Versions: 21

Compression:

Stored size: 1.17 KB

Contents

module Fog
  module Compute
    class AzureRM
      # This class provides the actual implementation for service calls.
      class Real
        def check_vm_exists(resource_group, name, async)
          msg = "Checking Virtual Machine #{name}"
          Fog::Logger.debug msg
          begin
            if async
              response = @compute_mgmt_client.virtual_machines.get_async(resource_group, name, 'instanceView')
            else
              @compute_mgmt_client.virtual_machines.get(resource_group, name, 'instanceView')
            end
          rescue MsRestAzure::AzureOperationError => e
            if resource_not_found?(e)
              Fog::Logger.debug "Virtual machine #{name} doesn't exist."
              return false
            else
              raise_azure_exception(e, msg)
            end
          end
          if async
            response
          else
            Fog::Logger.debug "Virtual machine #{name} exists."
            true
          end
        end
      end
      # This class provides the mock implementation for unit tests.
      class Mock
        def check_vm_exists(_resource_group, _name)
          true
        end
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 3 rubygems

Version Path
fog-azure-rm-0.6.0 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.5.3 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.5.2 lib/fog/azurerm/requests/compute/check_vm_exists.rb
far-gem-0.5.6 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.5.1 lib/fog/azurerm/requests/compute/check_vm_exists.rb
far-gem-0.5.5 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.5.0 lib/fog/azurerm/requests/compute/check_vm_exists.rb
far-gem-0.5.4 lib/fog/azurerm/requests/compute/check_vm_exists.rb
far-gem-0.5.3 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.9 lib/fog/azurerm/requests/compute/check_vm_exists.rb
far-gem-0.5.2 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.8 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.7 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.6 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.5 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-temp-0.0.5 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.4 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.3 lib/fog/azurerm/requests/compute/check_vm_exists.rb
far-gem-0.5.1 lib/fog/azurerm/requests/compute/check_vm_exists.rb
fog-azure-rm-0.4.2 lib/fog/azurerm/requests/compute/check_vm_exists.rb