diff options
Diffstat (limited to 'src/lib/Server/Plugins')
-rw-r--r-- | src/lib/Server/Plugins/Packages.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/Server/Plugins/Packages.py b/src/lib/Server/Plugins/Packages.py index 70dfd78c9..7ed7d3831 100644 --- a/src/lib/Server/Plugins/Packages.py +++ b/src/lib/Server/Plugins/Packages.py @@ -294,6 +294,7 @@ class Packages(Bcfg2.Server.Plugin.Plugin, Bcfg2.Server.Plugin.StructureValidator.__init__(self) Bcfg2.Server.Plugin.Generator.__init__(self) cachepath = self.data + '/cache' + self.sentinals = set() if not os.path.exists(cachepath): # create cache directory if needed os.mkdir(cachepath) @@ -310,12 +311,13 @@ class Packages(Bcfg2.Server.Plugin.Plugin, self.logger.info("File read failed; updating sources", exc_info=1) source.update() source.read_files() + self.sentinals.update(source.basegroups) def get_matching_sources(self, meta): return [s for s in self.sources if s.applies(meta)] def HandlesEntry(self, entry, metadata): - if [x for x in metadata.groups if x in ['debian', 'ubuntu', 'redhat']] \ + if [x for x in metadata.groups if x in self.sentinals] \ and entry.tag == 'Package': return True return False |