Currently when only generate it at vm start --- PVE/QemuServer.pm | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index 8aa550b..53be830 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -5088,6 +5088,8 @@ sub vmconfig_apply_pending { PVE::QemuConfig->cleanup_pending($conf); + my $generate_cloudnit = undef; + foreach my $opt (keys %{$conf->{pending}}) { # add/change next if $opt eq 'delete'; # just to be sure eval { @@ -5095,15 +5097,24 @@ sub vmconfig_apply_pending { vmconfig_register_unused_drive($storecfg, $vmid, $conf, parse_drive($opt, $conf->{$opt})) } }; + if (my $err = $@) { $add_apply_error->($opt, $err); } else { + + if (is_valid_drivename($opt)) { + my $drive = parse_drive($opt, $conf->{pending}->{$opt}); + $generate_cloudnit = 1 if drive_is_cloudinit($drive); + } + $conf->{$opt} = delete $conf->{pending}->{$opt}; } } + # write all changes at once to avoid unnecessary i/o PVE::QemuConfig->write_config($vmid, $conf); + PVE::QemuServer::Cloudinit::generate_cloudinitconfig($conf, $vmid) if $generate_cloudnit; } sub vmconfig_update_net { -- 2.30.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel