From: Martin Kletzander <[email protected]>

The difference is that the usual UUID is supposed to be unique per host
and instanceUuid should be unique across the whole cluster.  One could
think of them as HUID and CUID (as the first "U" does apparently mean
something else in the Broadcom world).  That _would_ be fine for our
scenario.  However, that piece of information turns out to be false as
well and the UUID we were using (`config.uuid`, or in VMX the
`uuid.bios`) can be the same in two machines on the same host.

Fortunately the `FindByUuid()` function can also search for VMs based on
their `instanceUuid`, dictated by the so far omitted third parameter.
Unfortunately that parameter is not parsed (or at least properly) before
vSphere API 4.0 (the documentation says 2.0, but we are not using that
namespace and 4.0 is the lowest we can target), which we are not
specifying in the server returns a 500 HTTP error if we use the
`instanceUuid` parameter.

So this patch adds the `SOAPAction: urn:vim25/4.0` header to the cURL
requests which makes that `FindByUuid()` function work even with the
`instanceUuid` set, but without any extra labor.

After that this patch also changes all UUIDs to be parsed from the
`config.instanceUuid` (or `vc.uuid` in the VMX, but there's a fallback
to the old `uuid.bios`) and adjusts tests accordingly.

To give users (and management applications) the possibility to revert
back to the previous (legacy) behaviour a new URI query parameter is
introduced, called `legacy_uuid` which, if set to `1`, still keeps the
code working as it did before this patch.

Last, but not least it changes the parameter to aforementioned function
to be true (unless the legacy behaviour is requested, of course) and
henceforth all searching ought to be done with the more unique ID.

Resolves: https://redhat.atlassian.net/browse/RHEL-174300
Signed-off-by: Martin Kletzander <[email protected]>
---
 docs/drvesx.rst                          |  9 +++++
 src/esx/esx_driver.c                     | 43 ++++++++++++++++--------
 src/esx/esx_util.c                       | 11 ++++++
 src/esx/esx_util.h                       |  1 +
 src/esx/esx_vi.c                         | 32 +++++++++++++++---
 src/esx/esx_vi.h                         |  3 ++
 src/vmx/vmx.c                            | 12 +++++--
 tests/vmx2xmldata/esx-in-the-wild-10.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-11.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-12.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-13.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-14.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-15.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-16.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-17.xml |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-5.xml  |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-6.xml  |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-7.xml  |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-8.xml  |  2 +-
 tests/vmx2xmldata/esx-in-the-wild-9.xml  |  2 +-
 20 files changed, 104 insertions(+), 33 deletions(-)

diff --git a/docs/drvesx.rst b/docs/drvesx.rst
index 84416562ba3f..0fd9c865fbf2 100644
--- a/docs/drvesx.rst
+++ b/docs/drvesx.rst
@@ -156,6 +156,15 @@ The driver understands the extra parameters shown below.
 |                 |                             | ``no_verify`` is set        |
 |                 |                             | to ``1``.                   |
 +-----------------+-----------------------------+-----------------------------+
+| ``legacy_uuid`` | ``0`` or ``1``              | If set to ``1``, the driver |
+|                 |                             | will track VMs based on     |
+|                 |                             | their "Host-unique" UUID.   |
+|                 |                             | If set to ``0`` it will use |
+|                 |                             | the "Cluster-unique" UUID   |
+|                 |                             | instead. The default value  |
+|                 |                             | is ``0``.                   |
+|                 |                             | :since:`Since 12.4.0`.      |
++-----------------+-----------------------------+-----------------------------+
 
 Authentication
 ~~~~~~~~~~~~~~
diff --git a/src/esx/esx_driver.c b/src/esx/esx_driver.c
index 6ff0db48ac02..c5b3fa47b6a2 100644
--- a/src/esx/esx_driver.c
+++ b/src/esx/esx_driver.c
@@ -1418,8 +1418,9 @@ esxDomainLookupByID(virConnectPtr conn, int id)
     if (esxVI_String_AppendValueListToList(&propertyNameList,
                                            "configStatus\0"
                                            "name\0"
-                                           "runtime.powerState\0"
-                                           "config.uuid\0") < 0 ||
+                                           "runtime.powerState\0") < 0 ||
+        esxVI_String_AppendValueToList(&propertyNameList,
+                                       priv->primary->uuid_key) < 0 ||
         esxVI_LookupVirtualMachineList(priv->primary, propertyNameList,
                                        &virtualMachineList) < 0) {
         goto cleanup;
@@ -1439,6 +1440,7 @@ esxDomainLookupByID(virConnectPtr conn, int id)
             continue;
 
         if (esxVI_GetVirtualMachineIdentity(virtualMachine,
+                                            priv->primary->uuid_key,
                                             &id_candidate, &name_candidate,
                                             uuid_candidate) < 0) {
             goto cleanup;
@@ -1486,7 +1488,7 @@ esxDomainLookupByUUID(virConnectPtr conn, const unsigned 
char *uuid)
         esxVI_LookupVirtualMachineByUuid(priv->primary, uuid, propertyNameList,
                                          &virtualMachine,
                                          esxVI_Occurrence_RequiredItem) < 0 ||
-        esxVI_GetVirtualMachineIdentity(virtualMachine, &id, &name, NULL) < 0 
||
+        esxVI_GetVirtualMachineIdentity(virtualMachine, NULL, &id, &name, 
NULL) < 0 ||
         esxVI_GetVirtualMachinePowerState(virtualMachine, &powerState) < 0) {
         goto cleanup;
     }
@@ -1521,15 +1523,17 @@ esxDomainLookupByName(virConnectPtr conn, const char 
*name)
 
     if (esxVI_String_AppendValueListToList(&propertyNameList,
                                            "configStatus\0"
-                                           "runtime.powerState\0"
-                                           "config.uuid\0") < 0 ||
+                                           "runtime.powerState\0") < 0 ||
+        esxVI_String_AppendValueToList(&propertyNameList,
+                                       priv->primary->uuid_key) < 0 ||
         esxVI_LookupVirtualMachineByName(priv->primary, name, propertyNameList,
                                          &virtualMachine,
                                          esxVI_Occurrence_RequiredItem) < 0) {
         goto cleanup;
     }
 
-    if (esxVI_GetVirtualMachineIdentity(virtualMachine, &id, NULL, uuid) < 0 ||
+    if (esxVI_GetVirtualMachineIdentity(virtualMachine, 
priv->primary->uuid_key,
+                                        &id, NULL, uuid) < 0 ||
         esxVI_GetVirtualMachinePowerState(virtualMachine, &powerState) < 0) {
         goto cleanup;
     }
@@ -2583,7 +2587,7 @@ esxDomainGetXMLDesc(virDomainPtr domain, unsigned int 
flags)
                                          esxVI_Occurrence_RequiredItem) < 0 ||
         esxVI_GetVirtualMachineMORef(virtualMachine, &moref) < 0 ||
         esxVI_GetVirtualMachinePowerState(virtualMachine, &powerState) < 0 ||
-        esxVI_GetVirtualMachineIdentity(virtualMachine, &id, NULL, NULL) < 0 ||
+        esxVI_GetVirtualMachineIdentity(virtualMachine, NULL, &id, NULL, NULL) 
< 0 ||
         esxVI_GetStringValue(virtualMachine, "config.files.vmPathName",
                              &vmPathName, esxVI_Occurrence_RequiredItem) < 0) {
         goto cleanup;
@@ -2630,6 +2634,9 @@ esxDomainGetXMLDesc(virDomainPtr domain, unsigned int 
flags)
         if (powerState != esxVI_VirtualMachinePowerState_PoweredOff)
             def->id = id;
 
+        if (priv->primary->legacy_uuid)
+            memcpy(def->uuid, def->hw_uuid, VIR_UUID_BUFLEN);
+
         xml = virDomainDefFormat(def, priv->xmlopt,
                                  virDomainDefFormatConvertXMLFlags(flags));
     }
@@ -2771,7 +2778,7 @@ esxConnectListDefinedDomains(virConnectPtr conn, char 
**const names, int maxname
 
         names[count] = NULL;
 
-        if (esxVI_GetVirtualMachineIdentity(virtualMachine, NULL, 
&names[count],
+        if (esxVI_GetVirtualMachineIdentity(virtualMachine, NULL, NULL, 
&names[count],
                                             NULL) < 0) {
             goto cleanup;
         }
@@ -2838,7 +2845,7 @@ esxDomainCreateWithFlags(virDomainPtr domain, unsigned 
int flags)
           (priv->primary, domain->uuid, propertyNameList, &virtualMachine,
            priv->parsedUri->autoAnswer) < 0 ||
         esxVI_GetVirtualMachinePowerState(virtualMachine, &powerState) < 0 ||
-        esxVI_GetVirtualMachineIdentity(virtualMachine, &id, NULL, NULL) < 0) {
+        esxVI_GetVirtualMachineIdentity(virtualMachine, NULL, &id, NULL, NULL) 
< 0) {
         goto cleanup;
     }
 
@@ -4787,8 +4794,9 @@ esxConnectListAllDomains(virConnectPtr conn,
         /* Request required data for esxVI_GetVirtualMachineIdentity */
         if (esxVI_String_AppendValueListToList(&propertyNameList,
                                                "configStatus\0"
-                                               "name\0"
-                                               "config.uuid\0") < 0) {
+                                               "name\0") < 0 ||
+            esxVI_String_AppendValueToList(&propertyNameList,
+                                           priv->primary->uuid_key) < 0) {
             goto cleanup;
         }
     }
@@ -4827,8 +4835,11 @@ esxConnectListAllDomains(virConnectPtr conn,
         /* If the lookup of the required properties fails for some of the 
machines
          * in the list it's preferrable to return the valid objects instead of
          * failing outright */
-        if ((needIdentity && esxVI_GetVirtualMachineIdentity(virtualMachine, 
&id, &name, uuid) < 0) ||
-            (needPowerState && 
esxVI_GetVirtualMachinePowerState(virtualMachine, &powerState) < 0)) {
+        if ((needIdentity &&
+             esxVI_GetVirtualMachineIdentity(virtualMachine, 
priv->primary->uuid_key,
+                                             &id, &name, uuid) < 0) ||
+            (needPowerState &&
+             esxVI_GetVirtualMachinePowerState(virtualMachine, &powerState) < 
0)) {
 
             /* Raise error only if we didn't successfuly fill any domain */
             if (count == 0 && !virtualMachine->_next)
@@ -4960,9 +4971,13 @@ esxDomainHasManagedSaveImage(virDomainPtr domain, 
unsigned int flags)
     esxPrivate *priv = domain->conn->privateData;
     esxVI_ManagedObjectReference *managedObjectReference = NULL;
     char uuid_string[VIR_UUID_STRING_BUFLEN] = "";
+    esxVI_Boolean instanceUuid = esxVI_Boolean_True;
 
     virCheckFlags(0, -1);
 
+    if (priv->primary->legacy_uuid)
+        instanceUuid = esxVI_Boolean_Undefined;
+
     if (esxVI_EnsureSession(priv->primary) < 0)
         return -1;
 
@@ -4970,7 +4985,7 @@ esxDomainHasManagedSaveImage(virDomainPtr domain, 
unsigned int flags)
 
     if (esxVI_FindByUuid(priv->primary, priv->primary->datacenter->_reference,
                          uuid_string, esxVI_Boolean_True,
-                         esxVI_Boolean_Undefined,
+                         instanceUuid,
                          &managedObjectReference) < 0) {
         return -1;
     }
diff --git a/src/esx/esx_util.c b/src/esx/esx_util.c
index 1443ec3b9e46..6dee2259e580 100644
--- a/src/esx/esx_util.c
+++ b/src/esx/esx_util.c
@@ -42,6 +42,7 @@ esxUtil_ParseUri(esxUtil_ParsedUri **parsedUri, virURI *uri)
     size_t i;
     int noVerify;
     int autoAnswer;
+    int legacy_uuid;
     char *tmp;
 
     ESX_VI_CHECK_ARG_LIST(parsedUri);
@@ -87,6 +88,16 @@ esxUtil_ParseUri(esxUtil_ParsedUri **parsedUri, virURI *uri)
             }
 
             (*parsedUri)->autoAnswer = autoAnswer != 0;
+        } else if (STRCASEEQ(queryParam->name, "legacy_uuid")) {
+            if (virStrToLong_i(queryParam->value, NULL, 10, &legacy_uuid) < 0 
||
+                (legacy_uuid != 0 && legacy_uuid != 1)) {
+                virReportError(VIR_ERR_INVALID_ARG,
+                               _("Query parameter 'legacy_uuid' has unexpected 
value '%1$s' (should be 0 or 1)"),
+                               queryParam->value);
+                goto cleanup;
+            }
+
+            (*parsedUri)->legacy_uuid = legacy_uuid != 0;
         } else if (STRCASEEQ(queryParam->name, "proxy")) {
             /* Expected format: [<type>://]<hostname>[:<port>] */
             (*parsedUri)->proxy = true;
diff --git a/src/esx/esx_util.h b/src/esx/esx_util.h
index 29f01e0c1559..545bf7f3014c 100644
--- a/src/esx/esx_util.h
+++ b/src/esx/esx_util.h
@@ -46,6 +46,7 @@ struct _esxUtil_ParsedUri {
     int proxy_port;
     char *path;
     char *cacert;
+    bool legacy_uuid;
 };
 
 int esxUtil_ParseUri(esxUtil_ParsedUri **parsedUri, virURI *uri);
diff --git a/src/esx/esx_vi.c b/src/esx/esx_vi.c
index db006ed16f40..818ff0de4c50 100644
--- a/src/esx/esx_vi.c
+++ b/src/esx/esx_vi.c
@@ -300,6 +300,17 @@ esxVI_CURL_Connect(esxVI_CURL *curl, esxUtil_ParsedUri 
*parsedUri)
     curl->headers = curl_slist_append(curl->headers,
                                       "Content-Type: text/xml; charset=UTF-8");
 
+    /*
+     * Testing showed that the 4.0 version is most close to our current types 
in
+     * esx_vi_generator.input data.  We could update the version if new method
+     * parameters or object properties are needed.
+     *
+     * The other option is to drop the "/x.y" suffix completely once
+     * https://gitlab.com/libvirt/libvirt/-/work_items/878 is implemented since
+     * that will not limit the version at all.
+     */
+    curl->headers = curl_slist_append(curl->headers, "SOAPAction: 
urn:vim25/4.0");
+
     /*
      * Add an empty expect header to stop CURL from waiting for a response code
      * 100 (Continue) from the server before continuing the POST operation.
@@ -933,7 +944,8 @@ esxVI_Context_Connect(esxVI_Context *ctx, const char *url,
     if (ctx->productLine == esxVI_ProductLine_VPX)
         ctx->hasSessionIsActive = true;
 
-
+    ctx->legacy_uuid = parsedUri->legacy_uuid;
+    ctx->uuid_key = ctx->legacy_uuid ? "config.uuid" : "config.instanceUuid";
 
     if (esxVI_Login(ctx, username, escapedPassword, NULL, &ctx->session) < 0 ||
         esxVI_BuildSelectSetCollection(ctx) < 0) {
@@ -2386,6 +2398,7 @@ esxVI_LookupNumberOfDomainsByPowerState(esxVI_Context 
*ctx,
 
 int
 esxVI_GetVirtualMachineIdentity(esxVI_ObjectContent *virtualMachine,
+                                const char *uuid_key,
                                 int *id, char **name, unsigned char *uuid)
 {
     const char *uuid_string = NULL;
@@ -2443,6 +2456,12 @@ esxVI_GetVirtualMachineIdentity(esxVI_ObjectContent 
*virtualMachine,
     }
 
     if (uuid) {
+        if (!uuid_key) {
+            virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+                           _("Cannot get VM's UUID without supplying a VM UUID 
key"));
+            goto failure;
+        }
+
         if (esxVI_GetManagedEntityStatus(virtualMachine, "configStatus",
                                          &configStatus) < 0) {
             goto failure;
@@ -2452,7 +2471,8 @@ esxVI_GetVirtualMachineIdentity(esxVI_ObjectContent 
*virtualMachine,
             for (dynamicProperty = virtualMachine->propSet;
                  dynamicProperty;
                  dynamicProperty = dynamicProperty->_next) {
-                if (STREQ(dynamicProperty->name, "config.uuid")) {
+
+                if (STREQ(dynamicProperty->name, uuid_key)) {
                     if (esxVI_AnyType_ExpectType(dynamicProperty->val,
                                                  esxVI_Type_String) < 0) {
                         goto failure;
@@ -2676,13 +2696,17 @@ esxVI_LookupVirtualMachineByUuid(esxVI_Context *ctx, 
const unsigned char *uuid,
     int result = -1;
     esxVI_ManagedObjectReference *managedObjectReference = NULL;
     char uuid_string[VIR_UUID_STRING_BUFLEN] = "";
+    esxVI_Boolean instanceUuid = esxVI_Boolean_True;
+
+    if (ctx->legacy_uuid)
+        instanceUuid = esxVI_Boolean_Undefined;
 
     ESX_VI_CHECK_ARG_LIST(virtualMachine);
 
     virUUIDFormat(uuid, uuid_string);
 
     if (esxVI_FindByUuid(ctx, ctx->datacenter->_reference, uuid_string,
-                         esxVI_Boolean_True, esxVI_Boolean_Undefined,
+                         esxVI_Boolean_True, instanceUuid,
                          &managedObjectReference) < 0) {
         return -1;
     }
@@ -2742,7 +2766,7 @@ esxVI_LookupVirtualMachineByName(esxVI_Context *ctx, 
const char *name,
          candidate = candidate->_next) {
         g_autofree char *name_candidate = NULL;
 
-        if (esxVI_GetVirtualMachineIdentity(candidate, NULL, &name_candidate,
+        if (esxVI_GetVirtualMachineIdentity(candidate, NULL, NULL, 
&name_candidate,
                                             NULL) < 0) {
             goto cleanup;
         }
diff --git a/src/esx/esx_vi.h b/src/esx/esx_vi.h
index b083ef2b0c66..98f89278a6e6 100644
--- a/src/esx/esx_vi.h
+++ b/src/esx/esx_vi.h
@@ -199,6 +199,8 @@ struct _esxVI_Context {
     esxVI_SelectionSpec *selectSet_datacenterToNetwork;
     bool hasQueryVirtualDiskUuid;
     bool hasSessionIsActive;
+    bool legacy_uuid;
+    const char *uuid_key;
 };
 
 int esxVI_Context_Alloc(esxVI_Context **ctx);
@@ -351,6 +353,7 @@ int esxVI_LookupNumberOfDomainsByPowerState
        bool inverse);
 
 int esxVI_GetVirtualMachineIdentity(esxVI_ObjectContent *virtualMachine,
+                                    const char *uuid_key,
                                     int *id, char **name, unsigned char *uuid);
 
 int esxVI_GetNumberOfSnapshotTrees
diff --git a/src/vmx/vmx.c b/src/vmx/vmx.c
index 084b4154427f..572087341ae0 100644
--- a/src/vmx/vmx.c
+++ b/src/vmx/vmx.c
@@ -1492,11 +1492,19 @@ virVMXParseConfig(virVMXContext *ctx,
         def->scsiBusMaxUnit = SCSI_SUPER_WIDE_BUS_MAX_CONT_UNIT;
     }
 
-    /* vmx:uuid.bios -> def:uuid */
+    /* vmx:uuid.bios -> def:hwuuid */
     /* FIXME: Need to handle 'uuid.action = "create"' */
-    if (virVMXGetConfigUUID(conf, "uuid.bios", def->uuid, true) < 0)
+    if (virVMXGetConfigUUID(conf, "uuid.bios", def->hw_uuid, true) < 0)
         goto cleanup;
 
+    /* vmx:vc.uuid -> def:uuid */
+    if (virVMXGetConfigUUID(conf, "vc.uuid", def->uuid, true) < 0)
+        goto cleanup;
+
+    /* Fallback to legacy behaviour if there is no vc.uuid */
+    if (!virUUIDIsValid(def->uuid))
+        memcpy(def->uuid, def->hw_uuid, VIR_UUID_BUFLEN);
+
     /* vmx:displayName -> def:name */
     if (virVMXGetConfigString(conf, "displayName", &def->name, true) < 0)
         goto cleanup;
diff --git a/tests/vmx2xmldata/esx-in-the-wild-10.xml 
b/tests/vmx2xmldata/esx-in-the-wild-10.xml
index 1b1fdf06623f..3a8bb20140a1 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-10.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-10.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>w2019biosvmware</name>
-  <uuid>421a6177-5aa9-abb7-5924-fc376c18a1b4</uuid>
+  <uuid>501af9f2-6d29-1c76-19a9-b208ede5f374</uuid>
   <genid>13c67c91-9f47-526f-b0d6-e4dd2e4bb4f9</genid>
   <memory unit='KiB'>4194304</memory>
   <currentMemory unit='KiB'>4194304</currentMemory>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-11.xml 
b/tests/vmx2xmldata/esx-in-the-wild-11.xml
index 0dd297af43f0..6398e50c5c6c 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-11.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-11.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>esx6.7-rhel7.7-x86_64</name>
-  <uuid>422c0152-63ab-cd03-9650-4301ae77aefd</uuid>
+  <uuid>502ca229-12eb-24f6-0c37-c025ff5da005</uuid>
   <memory unit='KiB'>2097152</memory>
   <currentMemory unit='KiB'>2097152</currentMemory>
   <vcpu placement='static'>1</vcpu>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-12.xml 
b/tests/vmx2xmldata/esx-in-the-wild-12.xml
index ac83982b9b88..d505ff58d12d 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-12.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-12.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>Auto-esx8.0-rhell9.3-efi-with-empty-cdrom</name>
-  <uuid>4220fca7-11dd-d67e-19cc-fcad0a37c342</uuid>
+  <uuid>5020ca5b-7ac1-5c44-cfa1-9e762e2f933b</uuid>
   <memory unit='KiB'>2097152</memory>
   <currentMemory unit='KiB'>2097152</currentMemory>
   <vcpu placement='static'>1</vcpu>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-13.xml 
b/tests/vmx2xmldata/esx-in-the-wild-13.xml
index cef9fd4e48c9..2bea51a087eb 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-13.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-13.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>Test-Mig-VM-1 (01ce57d0-4e20-41a5-8b6c-bcbf49a032ec)</name>
-  <uuid>421eb458-5448-fc12-2074-83d5e419e138</uuid>
+  <uuid>01ce57d0-4e20-41a5-8b6c-bcbf49a032ec</uuid>
   <description>name:Test-Mig-VM-1
 userid:962314ba515c48388a0e95c0961709ff
 username:admin
diff --git a/tests/vmx2xmldata/esx-in-the-wild-14.xml 
b/tests/vmx2xmldata/esx-in-the-wild-14.xml
index f10707d1d412..574dd2097455 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-14.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-14.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>wild14</name>
-  <uuid>421b223a-f2c1-c7c9-a399-34d2d9fde26d</uuid>
+  <uuid>501b831e-75d8-15f8-36fa-b9e225f395aa</uuid>
   <description>execution env sandbox automation platform</description>
   <memory unit='KiB'>33554432</memory>
   <currentMemory unit='KiB'>33554432</currentMemory>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-15.xml 
b/tests/vmx2xmldata/esx-in-the-wild-15.xml
index 78d15e1538e6..4c753f87e2ea 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-15.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-15.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>dokuwiki</name>
-  <uuid>420338bd-1c9e-ad50-99a2-59e92ddda8b6</uuid>
+  <uuid>500341d5-fe23-ac46-8cb3-77a8e5a1143d</uuid>
   <memory unit='KiB'>2097152</memory>
   <currentMemory unit='KiB'>2097152</currentMemory>
   <vcpu placement='static'>2</vcpu>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-16.xml 
b/tests/vmx2xmldata/esx-in-the-wild-16.xml
index 51746dd77ef0..8c5bc7f43513 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-16.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-16.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>Auto-esx8.0-rhel9.4-efi-nvme-disk</name>
-  <uuid>4220df89-e3a8-8513-f611-ad252bfd7047</uuid>
+  <uuid>5020196e-c5c8-7310-fcdb-d2933d0c4b2f</uuid>
   <memory unit='KiB'>2097152</memory>
   <currentMemory unit='KiB'>2097152</currentMemory>
   <vcpu placement='static'>1</vcpu>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-17.xml 
b/tests/vmx2xmldata/esx-in-the-wild-17.xml
index 725f21bdf601..506e08fc54ec 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-17.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-17.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>esx8.0-win11-with-second-disk-in-subfolder</name>
-  <uuid>42256ec1-e066-9364-3dd1-36a0b75263dd</uuid>
+  <uuid>50250f27-538b-5091-a43b-a50ce95f2382</uuid>
   <genid>3191ed70-eb21-9c71-2478-373fb27fed9b</genid>
   <memory unit='KiB'>4194304</memory>
   <currentMemory unit='KiB'>4194304</currentMemory>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-5.xml 
b/tests/vmx2xmldata/esx-in-the-wild-5.xml
index c88e60bdc070..a86119508c70 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-5.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-5.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>vmtest.local</name>
-  <uuid>423e94a9-a1c7-b31d-7161-76c7586c830e</uuid>
+  <uuid>503e06db-f8d5-458e-a2fb-f9820253a7be</uuid>
   <description>Centos 5.5 64bit Server</description>
   <memory unit='KiB'>2097152</memory>
   <currentMemory unit='KiB'>2097152</currentMemory>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-6.xml 
b/tests/vmx2xmldata/esx-in-the-wild-6.xml
index 805f03356129..f252304f9796 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-6.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-6.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>el6-test</name>
-  <uuid>564d15d4-d062-fe9a-80f5-eb8e1a2c3afc</uuid>
+  <uuid>5200b69b-8d88-7bdf-a14a-02705d653772</uuid>
   <memory unit='KiB'>1048576</memory>
   <currentMemory unit='KiB'>1048576</currentMemory>
   <vcpu placement='static'>1</vcpu>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-7.xml 
b/tests/vmx2xmldata/esx-in-the-wild-7.xml
index b641574776b6..076655f37ac2 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-7.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-7.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>esx-rhel6-mini-with-scsi-device</name>
-  <uuid>564d9176-621f-0239-f5ad-3a002371953b</uuid>
+  <uuid>52409533-33a2-56c5-36ce-80d605f8ecf4</uuid>
   <memory unit='KiB'>2097152</memory>
   <currentMemory unit='KiB'>2097152</currentMemory>
   <vcpu placement='static'>1</vcpu>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-8.xml 
b/tests/vmx2xmldata/esx-in-the-wild-8.xml
index f13e6f744880..2ef609e87bdb 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-8.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-8.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>RHEL7_10_NICs</name>
-  <uuid>42359420-99dc-4261-5264-ba58ddae20e4</uuid>
+  <uuid>50351de6-7d56-29ab-9d72-c7f9ea3fcfd0</uuid>
   <memory unit='KiB'>2097152</memory>
   <currentMemory unit='KiB'>2097152</currentMemory>
   <vcpu placement='static'>8</vcpu>
diff --git a/tests/vmx2xmldata/esx-in-the-wild-9.xml 
b/tests/vmx2xmldata/esx-in-the-wild-9.xml
index 6b4d878ab18a..4fbe141f6c47 100644
--- a/tests/vmx2xmldata/esx-in-the-wild-9.xml
+++ b/tests/vmx2xmldata/esx-in-the-wild-9.xml
@@ -1,6 +1,6 @@
 <domain type='vmware'>
   <name>v2v-windows-kkulkarn</name>
-  <uuid>42009372-17da-be73-779d-007ccf1bd228</uuid>
+  <uuid>5000d2b0-616e-6129-8c06-82b07440a871</uuid>
   <description>MIQ GUID=b55c806d-99b9-4fa5-bbcc-a4de04f822e5</description>
   <memory unit='KiB'>16777216</memory>
   <currentMemory unit='KiB'>16777216</currentMemory>
-- 
2.54.0

Reply via email to