Sha256: f181e12e5d6b55e4693965bd426094c3d5bf4f9a729122e7a81aa81548366ed4

Contents?: true

Size: 1.35 KB

Versions: 16

Compression:

Stored size: 1.35 KB

Contents

require 'MiqVm/MiqVm'
require 'Scvmm/miq_scvmm_vm_ssa_info'

class MiqScvmmVm < MiqVm
  def getCfg(_snap = nil)
    cfg_hash = {}
    # Collect disk information
    vhds = @scvmm.vm_all_harddisks(@ost.miq_vm)
    raise "Unable to get Hard Disk Info from VM #{@ost.miq_vm}." unless vhds.any?
    vhds.each do |vhd_attributes|
      vhd      = vhd_attributes["Path"]
      type     = vhd_attributes["ControllerType"].downcase
      number   = vhd_attributes["ControllerNumber"]
      index = vhd_attributes["ControllerLocation"]
      tag = "#{type}#{number}:#{index}"
      cfg_hash["#{tag}.present"]    = "true"
      cfg_hash["#{tag}.devicetype"] = "disk"
      cfg_hash["#{tag}.filename"]   = vhd
    end
    cfg_hash
  end

  private

  def init_disk_info(disk_info, disk_file)
    disk_info.hyperv_connection        = {}
    disk_info.fileName                 = disk_file
    disk_info.driveType                = @scvmm.get_drivetype(disk_file)
    disk_info.hyperv_connection[:host] = @ost.miq_hyperv[:host]
    disk_info.hyperv_connection[:port] = @ost.miq_hyperv[:port]
    if @ost.miq_hyperv[:domain].nil?
      disk_info.hyperv_connection[:user] = @ost.miq_hyperv[:user]
    else
      disk_info.hyperv_connection[:user] = @ost.miq_hyperv[:domain] + "\\" + @ost.miq_hyperv[:user]
    end
    disk_info.hyperv_connection[:password] = @ost.miq_hyperv[:password]
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
manageiq-smartstate-0.2.8 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.7 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.6 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.5 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.4 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.3 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.2 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.1 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.2.0 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.1.6 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.1.5 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.1.4 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.1.3 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.1.2 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.1.1 lib/MiqVm/miq_scvmm_vm.rb
manageiq-smartstate-0.1.0 lib/MiqVm/miq_scvmm_vm.rb