On November 21, 2022 1:29 pm, Stefan Hanreich wrote: > When rollbacking to the snapshot of a VM that includes RAM, the VM > gets started by the rollback task anyway, so no additional start task is > needed. Previously, when running rollback with the --start parameter > and the VM snapshot includes RAM, a start task was created. That task > failed because the VM had already been started by the rollback task. > > Additionally documented this behaviour in the description of the --start > parameter > > Signed-off-by: Stefan Hanreich <s.hanre...@proxmox.com> > --- > PVE/API2/Qemu.pm | 11 +++++++++-- > 1 file changed, 9 insertions(+), 2 deletions(-) > > diff --git a/PVE/API2/Qemu.pm b/PVE/API2/Qemu.pm > index 6bdcce2..7263a1a 100644 > --- a/PVE/API2/Qemu.pm > +++ b/PVE/API2/Qemu.pm > @@ -5064,7 +5064,8 @@ __PACKAGE__->register_method({ > snapname => get_standard_option('pve-snapshot-name'), > start => { > type => 'boolean', > - description => "Whether the VM should get started after rolling > back successfully", > + description => "Whether the VM should get started after rolling > back successfully." > + . " A VM will always be started when rollbacking a snapshot > with RAM included, regardless of this parameter.", > optional => 1, > default => 0, > }, > @@ -5092,7 +5093,13 @@ __PACKAGE__->register_method({ > PVE::QemuConfig->snapshot_rollback($vmid, $snapname); > > if ($param->{start}) { > - PVE::API2::Qemu->vm_start({ vmid => $vmid, node => $node }); > + my $conf = PVE::QemuConfig->load_config($vmid); > + my $snap = $conf->{snapshots}->{$snapname}; > + die "snapshot '$snapname' does not exist\n" if !defined($snap); > + > + if (!$snap->{vmstate}) { > + PVE::API2::Qemu->vm_start({ vmid => $vmid, node => $node }); > + }
this could also just call check_running, and skip the start call if it returns true. if ($param_start && !check_running(..)) { .. } > } > }; > > -- > 2.30.2 > > > _______________________________________________ > pve-devel mailing list > pve-devel@lists.proxmox.com > https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel > > > _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel