[pve-devel] [PATCH v4 storage 6/6] pvesm: add a move-volume command
Daniel Kral
d.kral at proxmox.com
Fri Sep 20 16:28:02 CEST 2024
On 9/18/24 16:49, Filip Schauer wrote:
> The method can be called from the PVE shell with `pvesm move-volume`:
>
> ```
> pvesm move-volume <source volume> <target storage> [--target-node <node>] [--delete]
> ```
>
> For example to move a VMA backup to a Proxmox Backup Server:
>
> ```
> pvesm move-volume \
> local:backup/vzdump-qemu-100-2024_06_25-13_08_56.vma.zst pbs
> ```
>
> Or move a container template to another node and delete the source:
>
> ```
> pvesm move-volume \
> local:vztmpl/devuan-4.0-standard_4.0_amd64.tar.gz local \
> --target-node pvenode2 --delete
> ```
>
> Signed-off-by: Filip Schauer <f.schauer at proxmox.com>
> ---
> src/PVE/CLI/pvesm.pm | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/src/PVE/CLI/pvesm.pm b/src/PVE/CLI/pvesm.pm
> index 9b9676b..8031fc1 100755
> --- a/src/PVE/CLI/pvesm.pm
> +++ b/src/PVE/CLI/pvesm.pm
> @@ -690,6 +690,8 @@ our $cmddef = {
> print "APIVER $res->{apiver}\n";
> print "APIAGE $res->{apiage}\n";
> }],
> + 'move-volume' => [ "PVE::API2::Storage::Content", 'move', ['volume', 'target-storage'],
> + { node => $nodename } ],
> 'prune-backups' => [ __PACKAGE__, 'prunebackups', ['storage'], { node => $nodename }, sub {
> my $res = shift;
>
nit: In my opinion, this patch could be moved up at least where the
'move-volume' API method was introduced, so that the 'move-volume' can
be invoked in whatever 'style' people like, but this is something more
minor.
Nevertheless, the CLI utility works just like the curl/pvesh API call as
far as I can tell by testing this with the test cases I have pointed out
in the previous patches.
Reviewed-by: Daniel Kral <d.kral at proxmox.com>
Tested-by: Daniel Kral <d.kral at proxmox.com>
More information about the pve-devel
mailing list