From a6513528dfc82a5c8a660b1fe3048ed58dd266de Mon Sep 17 00:00:00 2001 From: Tino Vazquez Date: Mon, 22 Oct 2018 19:22:19 +0200 Subject: [PATCH] B #2526: improvement in vCenter VM monitoring Do not fail if VM does not have DS associated --- src/vmm_mad/remotes/lib/vcenter_driver/host.rb | 5 +++-- src/vmm_mad/remotes/lib/vcenter_driver/vm_template.rb | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/vmm_mad/remotes/lib/vcenter_driver/host.rb b/src/vmm_mad/remotes/lib/vcenter_driver/host.rb index 0d5ce10ce5..f9377c88fd 100644 --- a/src/vmm_mad/remotes/lib/vcenter_driver/host.rb +++ b/src/vmm_mad/remotes/lib/vcenter_driver/host.rb @@ -509,8 +509,9 @@ class ClusterComputeResource str_info << "POLL=\"#{vm.info.gsub('"', "\\\"")}\"]" rescue Exception => e - STDERR.puts e.inspect - STDERR.puts e.backtrace + tmp_str = e.inspect + tmp_str << e.backtrace.join("\n") + str_info << "ERROR=\"#{Base64.encode64(tmp_str).gsub("\n","")}\"]" end end diff --git a/src/vmm_mad/remotes/lib/vcenter_driver/vm_template.rb b/src/vmm_mad/remotes/lib/vcenter_driver/vm_template.rb index 982fe7650b..106328218d 100644 --- a/src/vmm_mad/remotes/lib/vcenter_driver/vm_template.rb +++ b/src/vmm_mad/remotes/lib/vcenter_driver/vm_template.rb @@ -806,12 +806,13 @@ class Template @state = 'POWEROFF' if @state == 'd' str << "IMPORT_STATE =\"#{@state}\"\n" - # Get DS information - if !@vm_info["datastore"].last._ref.nil? + # Get DS information + if !@vm_info["datastore"].nil? + !@vm_info["datastore"].last.nil? && + !@vm_info["datastore"].last._ref.nil? str << "VCENTER_DS_REF = \"#{@vm_info["datastore"].last._ref}\"\n" end - vnc_port = nil keymap = VCenterDriver::VIHelper.get_default("VM/TEMPLATE/GRAPHICS/KEYMAP")