class VSphereAutomation::VCenter::VmHardwareDiskApi

Attributes

api_client[RW]

Public Class Methods

new(api_client = ApiClient.default) click to toggle source
# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 16
def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Public Instance Methods

create(vm, request_body, opts = {}) click to toggle source

Adds a virtual disk to the virtual machine. While adding the virtual disk, a new VMDK file may be created or an existing VMDK file may be used to back the virtual disk. @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param request_body @param [Hash] opts the optional parameters @return [VcenterVmHardwareDiskCreateResult|VapiStdErrorsUnsupportedError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|]

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 24
def create(vm, request_body, opts = {})
  data, _status_code, _headers = create_with_http_info(vm, request_body, opts)
  data
end
create_with_http_info(vm, request_body, opts = {}) click to toggle source

Adds a virtual disk to the virtual machine. While adding the virtual disk, a new VMDK file may be created or an existing VMDK file may be used to back the virtual disk. @api private @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param request_body @param [Hash] opts the optional parameters @return [Array<(VcenterVmHardwareDiskCreateResult|VapiStdErrorsUnsupportedError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|, Fixnum, Hash)>] data, response status code and response headers

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 35
def create_with_http_info(vm, request_body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: VmHardwareDiskApi.create ...'
  end
  # verify the required parameter 'vm' is set
  if @api_client.config.client_side_validation && vm.nil?
    fail ArgumentError, "Missing the required parameter 'vm' when calling VmHardwareDiskApi.create"
  end
  # verify the required parameter 'request_body' is set
  if @api_client.config.client_side_validation && request_body.nil?
    fail ArgumentError, "Missing the required parameter 'request_body' when calling VmHardwareDiskApi.create"
  end
  # resource path
  local_var_path = '/vcenter/vm/{vm}/hardware/disk'.sub('{' + 'vm' + '}', vm.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(request_body)
  auth_names = ['api_key']
  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => {
      '200' => 'VCenter::VcenterVmHardwareDiskCreateResult',
      '400' => 'VCenter::VapiStdErrorsUnsupportedError',
      '401' => 'VCenter::VapiStdErrorsUnauthenticatedError',
      '403' => 'VCenter::VapiStdErrorsUnauthorizedError',
      '404' => 'VCenter::VapiStdErrorsNotFoundError',
      '503' => 'VCenter::VapiStdErrorsServiceUnavailableError',
    })
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: VmHardwareDiskApi#create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
delete(vm, disk, opts = {}) click to toggle source

Removes a virtual disk from the virtual machine. This operation does not destroy the VMDK file that backs the virtual disk. It only detaches the VMDK file from the virtual machine. Once detached, the VMDK file will not be destroyed when the virtual machine to which it was associated is deleted. @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param disk Virtual disk identifier. The parameter must be an identifier for the resource type: vcenter.vm.hardware.Disk. @param [Hash] opts the optional parameters @return [|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|nil]

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 90
def delete(vm, disk, opts = {})
  delete_with_http_info(vm, disk, opts)
  nil
end
delete_with_http_info(vm, disk, opts = {}) click to toggle source

Removes a virtual disk from the virtual machine. This operation does not destroy the VMDK file that backs the virtual disk. It only detaches the VMDK file from the virtual machine. Once detached, the VMDK file will not be destroyed when the virtual machine to which it was associated is deleted. @api private @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param disk Virtual disk identifier. The parameter must be an identifier for the resource type: vcenter.vm.hardware.Disk. @param [Hash] opts the optional parameters @return [Array<(|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|nil, Fixnum, Hash)>] nil, response status code and response headers

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 101
def delete_with_http_info(vm, disk, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: VmHardwareDiskApi.delete ...'
  end
  # verify the required parameter 'vm' is set
  if @api_client.config.client_side_validation && vm.nil?
    fail ArgumentError, "Missing the required parameter 'vm' when calling VmHardwareDiskApi.delete"
  end
  # verify the required parameter 'disk' is set
  if @api_client.config.client_side_validation && disk.nil?
    fail ArgumentError, "Missing the required parameter 'disk' when calling VmHardwareDiskApi.delete"
  end
  # resource path
  local_var_path = '/vcenter/vm/{vm}/hardware/disk/{disk}'.sub('{' + 'vm' + '}', vm.to_s).sub('{' + 'disk' + '}', disk.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['api_key']
  data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: VmHardwareDiskApi#delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get(vm, disk, opts = {}) click to toggle source

Returns information about a virtual disk. @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param disk Virtual disk identifier. The parameter must be an identifier for the resource type: vcenter.vm.hardware.Disk. @param [Hash] opts the optional parameters @return [VcenterVmHardwareDiskResult|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|]

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 146
def get(vm, disk, opts = {})
  data, _status_code, _headers = get_with_http_info(vm, disk, opts)
  data
end
get_with_http_info(vm, disk, opts = {}) click to toggle source

Returns information about a virtual disk. @api private @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param disk Virtual disk identifier. The parameter must be an identifier for the resource type: vcenter.vm.hardware.Disk. @param [Hash] opts the optional parameters @return [Array<(VcenterVmHardwareDiskResult|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|, Fixnum, Hash)>] data, response status code and response headers

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 157
def get_with_http_info(vm, disk, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: VmHardwareDiskApi.get ...'
  end
  # verify the required parameter 'vm' is set
  if @api_client.config.client_side_validation && vm.nil?
    fail ArgumentError, "Missing the required parameter 'vm' when calling VmHardwareDiskApi.get"
  end
  # verify the required parameter 'disk' is set
  if @api_client.config.client_side_validation && disk.nil?
    fail ArgumentError, "Missing the required parameter 'disk' when calling VmHardwareDiskApi.get"
  end
  # resource path
  local_var_path = '/vcenter/vm/{vm}/hardware/disk/{disk}'.sub('{' + 'vm' + '}', vm.to_s).sub('{' + 'disk' + '}', disk.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['api_key']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => {
      '200' => 'VCenter::VcenterVmHardwareDiskResult',
      '400' => 'VCenter::VapiStdErrorsResourceInaccessibleError',
      '401' => 'VCenter::VapiStdErrorsUnauthenticatedError',
      '403' => 'VCenter::VapiStdErrorsUnauthorizedError',
      '404' => 'VCenter::VapiStdErrorsNotFoundError',
      '503' => 'VCenter::VapiStdErrorsServiceUnavailableError',
    })
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: VmHardwareDiskApi#get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
list(vm, opts = {}) click to toggle source

Returns commonly used information about the virtual disks belonging to the virtual machine. @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param [Hash] opts the optional parameters @return [VcenterVmHardwareDiskListResult|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|]

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 209
def list(vm, opts = {})
  data, _status_code, _headers = list_with_http_info(vm, opts)
  data
end
list_with_http_info(vm, opts = {}) click to toggle source

Returns commonly used information about the virtual disks belonging to the virtual machine. @api private @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param [Hash] opts the optional parameters @return [Array<(VcenterVmHardwareDiskListResult|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|, Fixnum, Hash)>] data, response status code and response headers

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 219
def list_with_http_info(vm, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: VmHardwareDiskApi.list ...'
  end
  # verify the required parameter 'vm' is set
  if @api_client.config.client_side_validation && vm.nil?
    fail ArgumentError, "Missing the required parameter 'vm' when calling VmHardwareDiskApi.list"
  end
  # resource path
  local_var_path = '/vcenter/vm/{vm}/hardware/disk'.sub('{' + 'vm' + '}', vm.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['api_key']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => {
      '200' => 'VCenter::VcenterVmHardwareDiskListResult',
      '400' => 'VCenter::VapiStdErrorsResourceInaccessibleError',
      '401' => 'VCenter::VapiStdErrorsUnauthenticatedError',
      '403' => 'VCenter::VapiStdErrorsUnauthorizedError',
      '404' => 'VCenter::VapiStdErrorsNotFoundError',
      '503' => 'VCenter::VapiStdErrorsServiceUnavailableError',
    })
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: VmHardwareDiskApi#list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
update(vm, disk, request_body, opts = {}) click to toggle source

Updates the configuration of a virtual disk. An update operation can be used to detach the existing VMDK file and attach another VMDK file to the virtual machine. @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param disk Virtual disk identifier. The parameter must be an identifier for the resource type: vcenter.vm.hardware.Disk. @param request_body @param [Hash] opts the optional parameters @return [|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|nil]

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 269
def update(vm, disk, request_body, opts = {})
  update_with_http_info(vm, disk, request_body, opts)
  nil
end
update_with_http_info(vm, disk, request_body, opts = {}) click to toggle source

Updates the configuration of a virtual disk. An update operation can be used to detach the existing VMDK file and attach another VMDK file to the virtual machine. @api private @param vm Virtual machine identifier. The parameter must be an identifier for the resource type: VirtualMachine. @param disk Virtual disk identifier. The parameter must be an identifier for the resource type: vcenter.vm.hardware.Disk. @param request_body @param [Hash] opts the optional parameters @return [Array<(|VapiStdErrorsResourceInaccessibleError|VapiStdErrorsUnauthenticatedError|VapiStdErrorsUnauthorizedError|VapiStdErrorsNotFoundError|VapiStdErrorsServiceUnavailableError|nil, Fixnum, Hash)>] nil, response status code and response headers

# File lib/vsphere-automation-vcenter/api/vm_hardware_disk_api.rb, line 281
def update_with_http_info(vm, disk, request_body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: VmHardwareDiskApi.update ...'
  end
  # verify the required parameter 'vm' is set
  if @api_client.config.client_side_validation && vm.nil?
    fail ArgumentError, "Missing the required parameter 'vm' when calling VmHardwareDiskApi.update"
  end
  # verify the required parameter 'disk' is set
  if @api_client.config.client_side_validation && disk.nil?
    fail ArgumentError, "Missing the required parameter 'disk' when calling VmHardwareDiskApi.update"
  end
  # verify the required parameter 'request_body' is set
  if @api_client.config.client_side_validation && request_body.nil?
    fail ArgumentError, "Missing the required parameter 'request_body' when calling VmHardwareDiskApi.update"
  end
  # resource path
  local_var_path = '/vcenter/vm/{vm}/hardware/disk/{disk}'.sub('{' + 'vm' + '}', vm.to_s).sub('{' + 'disk' + '}', disk.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(request_body)
  auth_names = ['api_key']
  data, status_code, headers = @api_client.call_api(:PATCH, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: VmHardwareDiskApi#update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end