mirror of
https://git.proxmox.com/git/pve-manager
synced 2025-08-08 12:29:49 +00:00
api: add 'type' parameter to pool GET endpoint
Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
This commit is contained in:
parent
16c6f8afa6
commit
09ba41362c
@ -211,6 +211,11 @@ __PACKAGE__->register_method ({
|
|||||||
type => 'string',
|
type => 'string',
|
||||||
format => 'pve-poolid',
|
format => 'pve-poolid',
|
||||||
},
|
},
|
||||||
|
type => {
|
||||||
|
type => 'string',
|
||||||
|
enum => [ 'qemu', 'lxc', 'storage' ],
|
||||||
|
optional => 1,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
returns => {
|
returns => {
|
||||||
@ -269,27 +274,29 @@ __PACKAGE__->register_method ({
|
|||||||
my $members = [];
|
my $members = [];
|
||||||
for my $vmid (sort keys %{$pool_config->{vms}}) {
|
for my $vmid (sort keys %{$pool_config->{vms}}) {
|
||||||
my $vmdata = $idlist->{$vmid};
|
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);
|
my $entry = PVE::API2Tools::extract_vm_stats($vmid, $vmdata, $rrd);
|
||||||
push @$members, $entry;
|
push @$members, $entry;
|
||||||
}
|
}
|
||||||
|
|
||||||
my $nodename = PVE::INotify::nodename();
|
my $nodename = PVE::INotify::nodename();
|
||||||
my $cfg = PVE::Storage::config();
|
my $cfg = PVE::Storage::config();
|
||||||
for my $storeid (sort keys %{$pool_config->{storage}}) {
|
if (!defined($param->{type}) || $param->{type} eq 'storage') {
|
||||||
my $scfg = PVE::Storage::storage_config ($cfg, $storeid, 1);
|
for my $storeid (sort keys %{$pool_config->{storage}}) {
|
||||||
next if !$scfg;
|
my $scfg = PVE::Storage::storage_config ($cfg, $storeid, 1);
|
||||||
|
next if !$scfg;
|
||||||
|
|
||||||
my $storage_node = $nodename; # prefer local node
|
my $storage_node = $nodename; # prefer local node
|
||||||
if ($scfg->{nodes} && !$scfg->{nodes}->{$storage_node}) {
|
if ($scfg->{nodes} && !$scfg->{nodes}->{$storage_node}) {
|
||||||
for my $node (sort keys(%{$scfg->{nodes}})) {
|
for my $node (sort keys(%{$scfg->{nodes}})) {
|
||||||
$storage_node = $node;
|
$storage_node = $node;
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
my $entry = PVE::API2Tools::extract_storage_stats($storeid, $scfg, $storage_node, $rrd);
|
my $entry = PVE::API2Tools::extract_storage_stats($storeid, $scfg, $storage_node, $rrd);
|
||||||
push @$members, $entry;
|
push @$members, $entry;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
my $res = {
|
my $res = {
|
||||||
|
Loading…
Reference in New Issue
Block a user