diff options
author | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2013-09-05 14:41:51 -0400 |
---|---|---|
committer | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2013-09-05 14:41:51 -0400 |
commit | 8ebb16fed2e768243a98d5333f9316e570870ce3 (patch) | |
tree | 75fa8b96988553365532b719a24590bb49b59f4b /src/lib/Bcfg2/Server/Plugins | |
parent | 9fa2293c0bdd71215bc24e371dbd59f0cf922d94 (diff) | |
parent | f8416134cc80d704e6f139aa1ab1ce47e00e4f7f (diff) | |
download | bcfg2-8ebb16fed2e768243a98d5333f9316e570870ce3.tar.gz bcfg2-8ebb16fed2e768243a98d5333f9316e570870ce3.tar.bz2 bcfg2-8ebb16fed2e768243a98d5333f9316e570870ce3.zip |
Merge branch 'maint'
Conflicts:
src/lib/Bcfg2/Server/Core.py
src/lib/Bcfg2/Server/Plugins/GroupLogic.py
Diffstat (limited to 'src/lib/Bcfg2/Server/Plugins')
-rw-r--r-- | src/lib/Bcfg2/Server/Plugins/GroupLogic.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/GroupLogic.py b/src/lib/Bcfg2/Server/Plugins/GroupLogic.py index e8e0ab840..1da7c8fec 100644 --- a/src/lib/Bcfg2/Server/Plugins/GroupLogic.py +++ b/src/lib/Bcfg2/Server/Plugins/GroupLogic.py @@ -4,6 +4,7 @@ template to dynamically set additional groups for clients. """ import os import lxml.etree import Bcfg2.Server.Plugin +from Bcfg2.Server.Plugins.Metadata import MetadataGroup class GroupLogicConfig(Bcfg2.Server.Plugin.StructFile): @@ -37,5 +38,11 @@ class GroupLogic(Bcfg2.Server.Plugin.Plugin, should_monitor=True) def get_additional_groups(self, metadata): - return [el.get("name") - for el in self.config.XMLMatch(metadata).findall("Group")] + rv = [] + for el in self.config.XMLMatch(metadata).findall("Group"): + if el.get("category"): + rv.append(MetadataGroup(el.get("name"), + category=el.get("category"))) + else: + rv.append(el.get("name")) + return rv |