mirror of
https://git.proxmox.com/git/pve-manager
synced 2025-08-05 14:32:46 +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',
|
||||
format => 'pve-poolid',
|
||||
},
|
||||
type => {
|
||||
type => 'string',
|
||||
enum => [ 'qemu', 'lxc', 'storage' ],
|
||||
optional => 1,
|
||||
},
|
||||
},
|
||||
},
|
||||
returns => {
|
||||
@ -269,27 +274,29 @@ __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();
|
||||
for my $storeid (sort keys %{$pool_config->{storage}}) {
|
||||
my $scfg = PVE::Storage::storage_config ($cfg, $storeid, 1);
|
||||
next if !$scfg;
|
||||
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;
|
||||
|
||||
my $storage_node = $nodename; # prefer local node
|
||||
if ($scfg->{nodes} && !$scfg->{nodes}->{$storage_node}) {
|
||||
for my $node (sort keys(%{$scfg->{nodes}})) {
|
||||
$storage_node = $node;
|
||||
last;
|
||||
my $storage_node = $nodename; # prefer local node
|
||||
if ($scfg->{nodes} && !$scfg->{nodes}->{$storage_node}) {
|
||||
for my $node (sort keys(%{$scfg->{nodes}})) {
|
||||
$storage_node = $node;
|
||||
last;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
my $entry = PVE::API2Tools::extract_storage_stats($storeid, $scfg, $storage_node, $rrd);
|
||||
push @$members, $entry;
|
||||
my $entry = PVE::API2Tools::extract_storage_stats($storeid, $scfg, $storage_node, $rrd);
|
||||
push @$members, $entry;
|
||||
}
|
||||
}
|
||||
|
||||
my $res = {
|
||||
|
Loading…
Reference in New Issue
Block a user