api: add 'type' parameter to pool GET endpoint

Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
This commit is contained in:
Hannes Laimer 2022-01-31 12:16:33 +01:00 committed by Thomas Lamprecht
parent 16c6f8afa6
commit 09ba41362c

View File

@ -211,6 +211,11 @@ __PACKAGE__->register_method ({
type => 'string',
format => 'pve-poolid',
},
type => {
type => 'string',
enum => [ 'qemu', 'lxc', 'storage' ],
optional => 1,
},
},
},
returns => {
@ -269,13 +274,14 @@ __PACKAGE__->register_method ({
my $members = [];
for my $vmid (sort keys %{$pool_config->{vms}}) {
my $vmdata = $idlist->{$vmid};
next if !$vmdata;
next if !$vmdata || defined($param->{type}) && $param->{type} ne $vmdata->{type};
my $entry = PVE::API2Tools::extract_vm_stats($vmid, $vmdata, $rrd);
push @$members, $entry;
}
my $nodename = PVE::INotify::nodename();
my $cfg = PVE::Storage::config();
if (!defined($param->{type}) || $param->{type} eq 'storage') {
for my $storeid (sort keys %{$pool_config->{storage}}) {
my $scfg = PVE::Storage::storage_config ($cfg, $storeid, 1);
next if !$scfg;
@ -291,6 +297,7 @@ __PACKAGE__->register_method ({
my $entry = PVE::API2Tools::extract_storage_stats($storeid, $scfg, $storage_node, $rrd);
push @$members, $entry;
}
}
my $res = {
members => $members,