From afeeb2b6430875cc3979ae4ad690d2a3efc0ac68 Mon Sep 17 00:00:00 2001 From: "Chris St. Pierre" Date: Fri, 11 May 2012 13:27:07 -0400 Subject: moved plugin-specific configs to main config file; propagate "setup" object to server Core --- src/lib/Bcfg2/Server/Plugins/Packages/__init__.py | 47 ++++++++++++----------- 1 file changed, 25 insertions(+), 22 deletions(-) (limited to 'src/lib/Bcfg2/Server/Plugins/Packages/__init__.py') diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py b/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py index 4070b13ca..d789a6d39 100644 --- a/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py +++ b/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py @@ -10,7 +10,6 @@ import Bcfg2.Server.Plugin from Bcfg2.Bcfg2Py3k import ConfigParser, urlopen from Bcfg2.Server.Plugins.Packages import Collection from Bcfg2.Server.Plugins.Packages.PackagesSources import PackagesSources -from Bcfg2.Server.Plugins.Packages.PackagesConfig import PackagesConfig class Packages(Bcfg2.Server.Plugin.Plugin, Bcfg2.Server.Plugin.StructureValidator, @@ -36,11 +35,9 @@ class Packages(Bcfg2.Server.Plugin.Plugin, # create key directory if needed os.makedirs(self.keypath) - # set up config files - self.config = PackagesConfig(self) self.sources = PackagesSources(os.path.join(self.data, "sources.xml"), self.cachepath, core.fam, self, - self.config) + self.core.setup) def toggle_debug(self): Bcfg2.Server.Plugin.Plugin.toggle_debug(self) @@ -49,7 +46,7 @@ class Packages(Bcfg2.Server.Plugin.Plugin, @property def disableResolver(self): try: - return not self.config.getboolean("global", "resolver") + return not self.core.setup.cfp.getboolean("packages", "resolver") except (ConfigParser.NoSectionError, ConfigParser.NoOptionError): return False except ValueError: @@ -57,20 +54,20 @@ class Packages(Bcfg2.Server.Plugin.Plugin, # "disabled", which are not handled according to the # Python docs but appear to be handled properly by # ConfigParser in at least some versions - return self.config.get("global", "resolver", - default="enabled").lower() == "disabled" + return self.core.setup.cfp.get("packages", "resolver", + default="enabled").lower() == "disabled" @property def disableMetaData(self): try: - return not self.config.getboolean("global", "resolver") + return not self.core.setup.cfp.getboolean("packages", "resolver") except (ConfigParser.NoSectionError, ConfigParser.NoOptionError): return False except ValueError: # for historical reasons we also accept "enabled" and # "disabled" - return self.config.get("global", "metadata", - default="enabled").lower() == "disabled" + return self.core.setup.cfp.get("packages", "metadata", + default="enabled").lower() == "disabled" def create_config(self, entry, metadata): """ create yum/apt config for the specified host """ @@ -89,20 +86,23 @@ class Packages(Bcfg2.Server.Plugin.Plugin, def HandleEntry(self, entry, metadata): if entry.tag == 'Package': collection = self._get_collection(metadata) - entry.set('version', self.config.get("global", + entry.set('version', self.core.setup.cfp.get("packages", "version", default="auto")) entry.set('type', collection.ptype) elif entry.tag == 'Path': - if (entry.get("name") == self.config.get("global", "yum_config", - default="") or - entry.get("name") == self.config.get("global", "apt_config", - default="")): + if (entry.get("name") == self.core.setup.cfp.get("packages", + "yum_config", + default="") or + entry.get("name") == self.core.setup.cfp.get("packages", + "apt_config", + default="")): self.create_config(entry, metadata) def HandlesEntry(self, entry, metadata): if entry.tag == 'Package': - if self.config.getboolean("global", "magic_groups", default=True): + if self.core.setup.cfp.getboolean("packages", "magic_groups", + default=True): collection = self._get_collection(metadata) if collection.magic_groups_match(): return True @@ -110,10 +110,12 @@ class Packages(Bcfg2.Server.Plugin.Plugin, return True elif entry.tag == 'Path': # managed entries for yum/apt configs - if (entry.get("name") == self.config.get("global", "yum_config", - default="") or - entry.get("name") == self.config.get("global", "apt_config", - default="")): + if (entry.get("name") == self.core.setup.cfp.get("packages", + "yum_config", + default="") or + entry.get("name") == self.core.setup.cfp.get("packages", + "apt_config", + default="")): return True return False @@ -183,8 +185,9 @@ class Packages(Bcfg2.Server.Plugin.Plugin, newpkgs.sort() for pkg in newpkgs: lxml.etree.SubElement(independent, 'BoundPackage', name=pkg, - version=self.config.get("global", "version", - default="auto"), + version=self.core.setup.cfp.get("packages", + "version", + default="auto"), type=collection.ptype, origin='Packages') def Refresh(self): -- cgit v1.2.3-1-g7c22