From: Wolfgang Bumiller Date: Tue, 23 May 2017 10:30:18 +0000 (+0200) Subject: import: add -delete-snapshot parameter X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;ds=inline;h=5259593842329645e1ebce58e480b0fea0d001ec;p=pve-storage.git import: add -delete-snapshot parameter This deletes a snapshot on *success*, done directly in the CLI handler, as the rollback/delete on failure is already happening inside the plugin's import method. --- diff --git a/PVE/CLI/pvesm.pm b/PVE/CLI/pvesm.pm index ba2c91b..8af4e7f 100755 --- a/PVE/CLI/pvesm.pm +++ b/PVE/CLI/pvesm.pm @@ -258,6 +258,13 @@ __PACKAGE__->register_method ({ optional => 1, default => 0, }, + 'delete-snapshot' => { + description => "A snapshot to delete on success", + type => 'string', + pattern => qr/[a-z0-9_\-]{1,80}/, + maxLength => 80, + optional => 1, + }, }, }, returns => { type => 'null' }, @@ -275,8 +282,12 @@ __PACKAGE__->register_method ({ } my $cfg = PVE::Storage::config(); - PVE::Storage::volume_import($cfg, $infh, $param->{volume}, $param->{format}, + my $volume = $param->{volume}; + my $delete = $param->{'delete-snapshot'}; + PVE::Storage::volume_import($cfg, $infh, $volume, $param->{format}, $param->{base}, $param->{'with-snapshots'}); + PVE::Storage::volume_snapshot_delete($cfg, $volume, $delete) + if defined($delete); return; } });