From 786285ab54bf93a4d1cc4d0e688f91a41a1d84bb Mon Sep 17 00:00:00 2001 From: Likitha Shetty Date: Thu, 24 Jul 2014 13:02:57 +0530 Subject: [PATCH] CLOUDSTACK-7174. [VMware] Recreating System VMs fails if global config 'vm.instancename' is set to true. Append VM's name in vCenter with the hostname only for User VMs. --- .../vmware/resource/VmwareResource.java | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java index 0c4ab20a195..6a803af54a4 100755 --- a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java +++ b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java @@ -1826,21 +1826,13 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa // Pair private Pair composeVmNames(VirtualMachineTO vmSpec) { - String vmInternalCSName = null; - String vmNameOnVcenter = null; - if (vmSpec.getHostName() != null) { - vmInternalCSName = vmSpec.getName(); - if (_instanceNameFlag == true) { - String[] tokens = vmInternalCSName.split("-"); - assert (tokens.length >= 3); // vmInternalCSName has format i-x-y- - vmNameOnVcenter = String.format("%s-%s-%s-%s", tokens[0], tokens[1], tokens[2], vmSpec.getHostName()); - } - else - vmNameOnVcenter = vmSpec.getName(); - } else { - vmNameOnVcenter = vmInternalCSName = vmSpec.getName(); + String vmInternalCSName = vmSpec.getName(); + String vmNameOnVcenter = vmSpec.getName(); + if (vmSpec.getType() == VirtualMachine.Type.User && _instanceNameFlag && vmSpec.getHostName() != null) { + String[] tokens = vmInternalCSName.split("-"); + assert (tokens.length >= 3); // vmInternalCSName has format i-x-y- + vmNameOnVcenter = String.format("%s-%s-%s-%s", tokens[0], tokens[1], tokens[2], vmSpec.getHostName()); } - return new Pair(vmInternalCSName, vmNameOnVcenter); }