use PVE::Tools;
use PVE::INotify;
use PVE::Cluster;
+use PVE::DataCenterConfig;
+use PVE::RPCEnvironment;
use Digest::MD5 qw(md5_hex);
use URI;
use URI::Escape;
use PVE::SafeSyslog;
+use PVE::Storage::Plugin;
my $hwaddress;
sub extract_storage_stats {
my ($storeid, $scfg, $node, $rrd) = @_;
+ my $content = PVE::Storage::Plugin::content_hash_to_string($scfg->{content});
+
my $entry = {
id => "storage/$node/$storeid",
storage => $storeid,
node => $node,
type => 'storage',
+ plugintype => $scfg->{type},
status => 'unknown',
shared => $scfg->{shared} || 0,
+ content => $content,
};
if (my $d = $rrd->{"pve2-storage/$node/$storeid"}) {
if !$node;
} else {
$node = $uri_param->{$proxyto};
- raise_param_exc({ $proxyto => "proxyto parameter does not exists"})
+ raise_param_exc({ $proxyto => "proxyto parameter does not exist"})
if !$node;
}
return $node;
}
+sub get_resource_pool_guest_members {
+ my ($pool) = @_;
+
+ my $usercfg = PVE::Cluster::cfs_read_file("user.cfg");
+
+ my $vmlist = PVE::Cluster::get_vmlist() || {};
+ my $idlist = $vmlist->{ids} || {};
+
+ my $data = $usercfg->{pools}->{$pool};
+
+ die "pool '$pool' does not exist\n" if !$data;
+
+ my $pool_members = [ grep { $idlist->{$_} } keys %{$data->{vms}} ];
+
+ return $pool_members;
+}
+
1;