diff options
author | Tim Laszlo <tim.laszlo@gmail.com> | 2010-07-08 18:34:26 +0000 |
---|---|---|
committer | Sol Jerome <sol.jerome@gmail.com> | 2010-07-08 23:26:49 -0500 |
commit | 4f3e0f661d64308bd75dbde8595b68e764e90395 (patch) | |
tree | e5e3488f2d6b788a33c2c04068197eaefe12bae3 /src/lib/Client/Tools | |
parent | 806c613f255b54d2c580b303361a7934d0324f08 (diff) | |
download | bcfg2-4f3e0f661d64308bd75dbde8595b68e764e90395.tar.gz bcfg2-4f3e0f661d64308bd75dbde8595b68e764e90395.tar.bz2 bcfg2-4f3e0f661d64308bd75dbde8595b68e764e90395.zip |
YUMng: Add basic Yum error handling on load
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5965 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'src/lib/Client/Tools')
-rw-r--r-- | src/lib/Client/Tools/YUMng.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/lib/Client/Tools/YUMng.py b/src/lib/Client/Tools/YUMng.py index b3043351f..2a441b01c 100644 --- a/src/lib/Client/Tools/YUMng.py +++ b/src/lib/Client/Tools/YUMng.py @@ -6,8 +6,10 @@ import copy import os.path import sys import yum +import yum.Errors import yum.misc import Bcfg2.Client.XML +import Bcfg2.Client.Tools import Bcfg2.Client.Tools.RPMng # Fix for python2.3 @@ -85,9 +87,17 @@ class YUMng(Bcfg2.Client.Tools.RPMng.RPMng): self.yum_avail = dict() self.yum_installed = dict() self.yb = yum.YumBase() - self.yb.doConfigSetup() - self.yb.doTsSetup() - self.yb.doRpmDBSetup() + try: + self.yb.doConfigSetup() + self.yb.doTsSetup() + self.yb.doRpmDBSetup() + except yum.Errors.RepoError, e: + self.logger.error("YUMng Repository error: %s" % e) + raise Bcfg2.Client.Tools.toolInstantiationError + except yum.Errors.YumBaseError, e: + self.logger.error("YUMng error: %s" % e) + raise Bcfg2.Client.Tools.toolInstantiationError + yup = self.yb.doPackageLists(pkgnarrow='updates') if hasattr(self.yb.rpmdb, 'pkglist'): yinst = self.yb.rpmdb.pkglist |