When doing a linked clone of a template, the task log, journal, nor the
UPID of the task will log the VMID of the newly created VM.

We add a log message at the start of the clone. This affects both full
and linked clones.

Signed-off-by: Maximiliano Sandoval <[email protected]>
---

Notes:
    Note that when creating linked clones we do not update the creation time
    in the config.
    
    When cloning two VMs from a template (created with "vanilla" settings),
    if one uses the same 'name' for both clones, then the only differences
    between the linked clones that could be used to tell them apart are the
    MAC address, the VM id, smbios UUID, and the vmgenid, all of which are
    randomly generated.
    
    I think it makes sense to update the creation time too. But for now,
    being able to tell from the task log which VM correspond to which
    qmclone task would be an improvement already.
    
    Tested:
     - create a template with id 101
     - running: qm clone 101 206 --full 0, and checking its output
       creating a clone of 101 with ID 206
       create linked clone of drive scsi0 (local-lvm:base-101-disk-0)
    
    Differences from v1:
     - Moved the message to the start of $clonefn

 src/PVE/API2/Qemu.pm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/PVE/API2/Qemu.pm b/src/PVE/API2/Qemu.pm
index 1e226f6f..0587ff97 100644
--- a/src/PVE/API2/Qemu.pm
+++ b/src/PVE/API2/Qemu.pm
@@ -4487,6 +4487,9 @@ __PACKAGE__->register_method({
         my $clonefn = sub {
             my ($conffile, $newconf, $oldconf, $vollist, $drives, $fullclone) =
                 $load_and_check->();
+
+            print("creating a clone of $vmid with ID $newid\n");
+
             my $storecfg = PVE::Storage::config();
 
             # auto generate a new uuid
-- 
2.47.3




Reply via email to