From c39d00ed0c47832c29b9094f1bd907a78f07ff3a Mon Sep 17 00:00:00 2001 From: "Carlos J. Herrera" Date: Thu, 21 Apr 2022 09:17:30 -0500 Subject: [PATCH] L #~: fix stop action in vCenter (#1963) --- src/tm_mad/vcenter/mv | 7 ++++++- src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb | 3 +++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/tm_mad/vcenter/mv b/src/tm_mad/vcenter/mv index 8d73967016..cfc880273c 100755 --- a/src/tm_mad/vcenter/mv +++ b/src/tm_mad/vcenter/mv @@ -68,6 +68,11 @@ begin vm = OpenNebula::VirtualMachine.new_with_id(vmid, one_client) vm.info + last_action = vm['HISTORY_RECORDS/HISTORY[last()]/ACTION'] + last_action_str = OpenNebula::VirtualMachine.get_history_action(last_action) + + exit 0 if last_action_str == "stop" + src_ds = vm.retrieve_elements('HISTORY_RECORDS/HISTORY/DS_ID')[-2] if src_ds == dsid @@ -78,7 +83,7 @@ begin .migrate_routine(vmid, host_orig, host_dest, false, dsid) end rescue StandardError => e - message = "Cannot migrate for VM #{vmid}. "\ + message = "Cannot move the VM #{vmid}. "\ 'Failed due to '\ "\"#{e.message}\"\n" OpenNebula.log_error(message) diff --git a/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb b/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb index 8a98ae8657..440da790d7 100644 --- a/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb +++ b/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb @@ -3388,6 +3388,9 @@ end pool.info src_id = pool["/HOST_POOL/HOST[NAME='#{src_host}']/ID"].to_i + + return if src_id == 0 + dst_id = pool["/HOST_POOL/HOST[NAME='#{dst_host}']/ID"].to_i # different destination ds