From 682ff68ecfc16e24bbe1a413e19639e4c7a15d9b Mon Sep 17 00:00:00 2001 From: Tim Laszlo Date: Thu, 29 Jul 2010 13:37:41 +0000 Subject: YUMng: Better error handling for installs Currently a missing package throws an exception during the install. This traps it and gracefully logs an error. git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5993 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Client/Tools/YUMng.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/lib/Client/Tools/YUMng.py b/src/lib/Client/Tools/YUMng.py index cc13b00b9..07bf38793 100644 --- a/src/lib/Client/Tools/YUMng.py +++ b/src/lib/Client/Tools/YUMng.py @@ -344,14 +344,20 @@ class YUMng(Bcfg2.Client.Tools.RPMng.RPMng): for inst in install_pkgs: pkg_arg = self.instance_status[inst].get('pkg').get('name') - self.yb.install(**build_yname(pkg_arg, inst)) + try: + self.yb.install(**build_yname(pkg_arg, inst)) + except yum.Errors.YumBaseError, yume: + self.logger.error("Error installing some packages: %s" % yume) if len(upgrade_pkgs) > 0: self.logger.info("Attempting to upgrade packages") for inst in upgrade_pkgs: pkg_arg = self.instance_status[inst].get('pkg').get('name') - self.yb.update(**build_yname(pkg_arg, inst)) + try: + self.yb.update(**build_yname(pkg_arg, inst)) + except yum.Errors.YumBaseError, yume: + self.logger.error("Error upgrading some packages: %s" % yume) self._runYumTransaction() -- cgit v1.2.3-1-g7c22