summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2014-10-20 14:25:04 -0500
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2014-10-20 14:25:04 -0500
commit8ce802c5f6f1d8de00108ecf5e3ff6eeeff3ccd1 (patch)
tree8d56e6f715cf364e259495f85a61afe238c5a066
parent5c68f95a382fdcd17fb5016a98b7eb7af4e057a6 (diff)
parent234aa9b1c5efc87d71b70e2abc5b422a487ec61e (diff)
downloadbcfg2-8ce802c5f6f1d8de00108ecf5e3ff6eeeff3ccd1.tar.gz
bcfg2-8ce802c5f6f1d8de00108ecf5e3ff6eeeff3ccd1.tar.bz2
bcfg2-8ce802c5f6f1d8de00108ecf5e3ff6eeeff3ccd1.zip
Merge pull request #215 from jsbillings/yum-plugin
YUM: Add options to enable and disable Yum plugins
-rw-r--r--src/lib/Bcfg2/Client/Tools/YUM.py10
-rw-r--r--src/lib/Bcfg2/Options.py12
2 files changed, 22 insertions, 0 deletions
diff --git a/src/lib/Bcfg2/Client/Tools/YUM.py b/src/lib/Bcfg2/Client/Tools/YUM.py
index 15ae5ef8b..a584fec86 100644
--- a/src/lib/Bcfg2/Client/Tools/YUM.py
+++ b/src/lib/Bcfg2/Client/Tools/YUM.py
@@ -191,6 +191,10 @@ class YUM(Bcfg2.Client.Tools.PkgTool):
self.logger.debug("Yum: Reinstall on verify fail: %s" % self.do_reinst)
self.logger.debug("Yum: installonlypkgs: %s" % self.installonlypkgs)
self.logger.debug("Yum: verify_flags: %s" % self.verify_flags)
+ self.logger.debug("Yum: disabled_plugins: %s" %
+ self.setup["yum_disabled_plugins"])
+ self.logger.debug("Yum: enabled_plugins: %s" %
+ self.setup["yum_enabled_plugins"])
def _loadYumBase(self, setup=None, logger=None):
''' this may be called before PkgTool.__init__() is called on
@@ -216,6 +220,12 @@ class YUM(Bcfg2.Client.Tools.PkgTool):
else:
debuglevel = 0
+ if setup['yum_disabled_plugins']:
+ rv.preconf.disabled_plugins = setup['yum_disabled_plugins']
+
+ if setup['yum_enabled_plugins']:
+ rv.preconf.enabled_plugins = setup['yum_enabled_plugins']
+
# pylint: disable=E1121,W0212
try:
rv.preconf.debuglevel = debuglevel
diff --git a/src/lib/Bcfg2/Options.py b/src/lib/Bcfg2/Options.py
index 206c63d4f..810a726ac 100644
--- a/src/lib/Bcfg2/Options.py
+++ b/src/lib/Bcfg2/Options.py
@@ -1099,6 +1099,16 @@ CLIENT_YUM_VERIFY_FLAGS = \
cf=('YUM', 'verify_flags'),
deprecated_cf=('YUMng', 'verify_flags'),
cook=list_split)
+CLIENT_YUM_DISABLED_PLUGINS = \
+ Option("YUM disabled plugins",
+ default=[],
+ cf=('YUM', 'disabled_plugins'),
+ cook=list_split)
+CLIENT_YUM_ENABLED_PLUGINS = \
+ Option("YUM enabled plugins",
+ default=[],
+ cf=('YUM', 'enabled_plugins'),
+ cook=list_split)
CLIENT_POSIX_UID_WHITELIST = \
Option("UID ranges the POSIXUsers tool will manage",
default=[],
@@ -1280,6 +1290,8 @@ DRIVER_OPTIONS = \
yum_version_fail_action=CLIENT_YUM_VERSION_FAIL_ACTION,
yum_verify_fail_action=CLIENT_YUM_VERIFY_FAIL_ACTION,
yum_verify_flags=CLIENT_YUM_VERIFY_FLAGS,
+ yum_disabled_plugins=CLIENT_YUM_DISABLED_PLUGINS,
+ yum_enabled_plugins=CLIENT_YUM_ENABLED_PLUGINS,
posix_uid_whitelist=CLIENT_POSIX_UID_WHITELIST,
posix_gid_whitelist=CLIENT_POSIX_GID_WHITELIST,
posix_uid_blacklist=CLIENT_POSIX_UID_BLACKLIST,