From 4d23a9ea84291522dcd18dd996ae4ba03eeb6a84 Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Wed, 27 Aug 2008 18:59:20 +0000 Subject: Log category-based group membership suppression (Resolves Ticket #595) git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@4896 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Server/Plugins/Metadata.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/lib/Server/Plugins/Metadata.py b/src/lib/Server/Plugins/Metadata.py index 328ccb9d2..10ee7c853 100644 --- a/src/lib/Server/Plugins/Metadata.py +++ b/src/lib/Server/Plugins/Metadata.py @@ -275,6 +275,7 @@ class Metadata(Bcfg2.Server.Plugin.MetadataPlugin, # self.groups[group] => (bundles, groups, categories) self.groups[group] = ([], [], {}) tocheck = [group] + group_cat = self.groups[group][2] while tocheck: now = tocheck.pop() if now not in self.groups[group][1]: @@ -282,11 +283,17 @@ class Metadata(Bcfg2.Server.Plugin.MetadataPlugin, if grouptmp.has_key(now): (bundles, groups) = grouptmp[now] for ggg in [ggg for ggg in groups if ggg not in self.groups[group][1]]: - if not self.categories.has_key(ggg) or not self.groups[group][2].has_key(self.categories[ggg]): + if ggg not in self.categories or \ + self.categories[ggg] not in self.groups[group][2]: self.groups[group][1].append(ggg) tocheck.append(ggg) - if self.categories.has_key(ggg): - self.groups[group][2][self.categories[ggg]] = ggg + if self.categories.has_key(ggg): + group_cat[self.categories[ggg]] = ggg + elif ggg in self.categories: + self.logger.info("Group %s: %s cat-suppressed %s" % \ + (group, + group_cat[self.categories[ggg]], + ggg)) [self.groups[group][0].append(bund) for bund in bundles if bund not in self.groups[group][0]] self.states[dest] = True -- cgit v1.2.3-1-g7c22