diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/Bcfg2/Server/Plugins/Metadata.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/Metadata.py b/src/lib/Bcfg2/Server/Plugins/Metadata.py index 5b552a01f..f6b05d451 100644 --- a/src/lib/Bcfg2/Server/Plugins/Metadata.py +++ b/src/lib/Bcfg2/Server/Plugins/Metadata.py @@ -1137,6 +1137,17 @@ class Metadata(Bcfg2.Server.Plugin.Metadata, if group in self.groups: imd.bundles.update(self.groups[group].bundles) + if not imd.profile: + # if the client still doesn't have a profile group after + # initial metadata, try to find one in the additional + # groups + profiles = [g for g in groups + if g in self.groups and self.groups[g].is_profile] + if len(profiles) >= 1: + imd.profile = profiles[0] + elif self.default: + imd.profile = self.default + def merge_additional_data(self, imd, source, data): if not hasattr(imd, source): setattr(imd, source, data) |