]> git.proxmox.com Git - pve-storage.git/commitdiff
list volumes: also return backup type for backups
authorFabian Ebner <f.ebner@proxmox.com>
Thu, 16 Dec 2021 12:12:23 +0000 (13:12 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Wed, 16 Mar 2022 16:42:39 +0000 (17:42 +0100)
Otherwise, there is no storage-agnostic way to filter by backup group.

Call it subtype, to not confuse it with content type, and to be able
to re-use it for other content types than backup, if the need ever
arises.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
PVE/Storage/PBSPlugin.pm
PVE/Storage/Plugin.pm
test/list_volumes_test.pm

index e186663316d361753768cd973b793a988c77f3cb..4b3f3497b6f7ab4ce2beb722d0771337df8245fa 100644 (file)
@@ -688,6 +688,7 @@ sub list_volumes {
            content => 'backup',
            vmid => int($bid),
            ctime => $epoch,
+           subtype => $btype eq 'vm' ? 'qemu' : 'lxc', # convert to PVE backup type
        };
 
        $info->{verification} = $item->{verification} if defined($item->{verification});
index 65cd4ee285066a16e79a2083d09e22bffe7aafed..667340908f84e410726e75e125a36724392f00a1 100644 (file)
@@ -1164,6 +1164,7 @@ my $get_subdir_files = sub {
            my $archive_info = eval { PVE::Storage::archive_info($fn) } // {};
 
            $info->{ctime} = $archive_info->{ctime} if defined($archive_info->{ctime});
+           $info->{subtype} = $archive_info->{type} // 'unknown';
 
            if (defined($vmid) || $fn =~ m!\-([1-9][0-9]{2,8})\-[^/]+\.${format}$!) {
                $info->{vmid} = $vmid // $1;
index ac75c048b8da85f86463923128c48bea9d545af9..d155cb9f758df36e21f27dd3d74542e6a7c99bf1 100644 (file)
@@ -133,6 +133,7 @@ my @tests = (
                'ctime'   => 1585602700,
                'format'  => 'vma.gz',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'qemu',
                'vmid'    => '16110',
                'volid'   => 'local:backup/vzdump-qemu-16110-2020_03_30-21_11_40.vma.gz',
            },
@@ -141,6 +142,7 @@ my @tests = (
                'ctime'   => 1585602765,
                'format'  => 'vma.lzo',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'qemu',
                'vmid'    => '16110',
                'volid'   => 'local:backup/vzdump-qemu-16110-2020_03_30-21_12_45.vma.lzo',
            },
@@ -149,6 +151,7 @@ my @tests = (
                'ctime'   => 1585602835,
                'format'  => 'vma',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'qemu',
                'vmid'    => '16110',
                'volid'   => 'local:backup/vzdump-qemu-16110-2020_03_30-21_13_55.vma',
            },
@@ -157,6 +160,7 @@ my @tests = (
                'ctime'   => 1585602835,
                'format'  => 'vma.zst',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'qemu',
                'vmid'    => '16110',
                'volid'   => 'local:backup/vzdump-qemu-16110-2020_03_30-21_13_55.vma.zst',
            },
@@ -202,6 +206,7 @@ my @tests = (
                'ctime'   => 1585604370,
                'format'  => 'tar.lzo',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'lxc',
                'vmid'    => '16112',
                'volid'   => 'local:backup/vzdump-lxc-16112-2020_03_30-21_39_30.tar.lzo',
            },
@@ -210,6 +215,7 @@ my @tests = (
                'ctime'   => 1585604970,
                'format'  => 'tar.gz',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'lxc',
                'vmid'    => '16112',
                'volid'   => 'local:backup/vzdump-lxc-16112-2020_03_30-21_49_30.tar.gz',
            },
@@ -218,6 +224,7 @@ my @tests = (
                'ctime'   => 1585604970,
                'format'  => 'tar.zst',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'lxc',
                'vmid'    => '16112',
                'volid'   => 'local:backup/vzdump-lxc-16112-2020_03_30-21_49_30.tar.zst',
            },
@@ -226,6 +233,7 @@ my @tests = (
                'ctime'   => 1585605570,
                'format'  => 'tgz',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'lxc',
                'vmid'    => '16112',
                'volid'   => 'local:backup/vzdump-lxc-16112-2020_03_30-21_59_30.tgz',
            },
@@ -368,6 +376,7 @@ my @tests = (
                'ctime'   => 1580759863,
                'format'  => 'tar.gz',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'lxc',
                'vmid'    => '19253',
                'volid'   => 'local:backup/vzdump-lxc-19253-2020_02_03-19_57_43.tar.gz',
            },
@@ -376,6 +385,7 @@ my @tests = (
                'ctime'   => 1548098959,
                'format'  => 'tar',
                'size'    => DEFAULT_SIZE,
+               'subtype' => 'lxc',
                'vmid'    => '19254',
                'volid'   => 'local:backup/vzdump-lxc-19254-2019_01_21-19_29_19.tar',
            },