From 4f3e0f661d64308bd75dbde8595b68e764e90395 Mon Sep 17 00:00:00 2001 From: Tim Laszlo Date: Thu, 8 Jul 2010 18:34:26 +0000 Subject: 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 --- src/lib/Client/Tools/YUMng.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'src') 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 -- cgit v1.2.3-1-g7c22