From c186a79899fa8ccfdeb3d51818ce340874399939 Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Sun, 21 Sep 2008 16:06:14 +0000 Subject: ClientMetadata add accessor methods for overall metadata (will make life easier for NagiosGen and never_CC) git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@4916 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Server/Plugins/Metadata.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src') diff --git a/src/lib/Server/Plugins/Metadata.py b/src/lib/Server/Plugins/Metadata.py index da951999d..c6008c7f4 100644 --- a/src/lib/Server/Plugins/Metadata.py +++ b/src/lib/Server/Plugins/Metadata.py @@ -31,6 +31,26 @@ class ClientMetadata(object): '''Test to see if client is a member of group''' return group in self.groups + def get_clients_by_group(self, group): + """ + return a list of clients that are members of a group + Arguments: + - `group`: group name + """ + profiles = [key for key, value in self.all[0].iteritems() \ + if group in value[1]] + return [key for key, value in self.all[1].iteritems() \ + if value in profiles] + + def get_clients_by_profile(self, profile): + """ + return clients with a given profile + Arguments: + - `profile`: profile name + """ + return [key for key, value in self.all[1].iteritems() \ + if value == profile] + class ProbeSet(Bcfg2.Server.Plugin.EntrySet): def __init__(self, path, fam, encoding, plugin_name): fpattern = '[0-9A-Za-z_\-]+' -- cgit v1.2.3-1-g7c22