From 835a434bc68fd497aad2d3a5db78d7ce83603e00 Mon Sep 17 00:00:00 2001 From: "Chris St. Pierre" Date: Fri, 5 Aug 2011 15:16:09 -0400 Subject: fixed backtrace if Packages downloads a bogus GPG key --- src/lib/Server/Plugins/Packages.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/lib/Server/Plugins/Packages.py b/src/lib/Server/Plugins/Packages.py index a4fb713d4..05c32d82f 100644 --- a/src/lib/Server/Plugins/Packages.py +++ b/src/lib/Server/Plugins/Packages.py @@ -1238,12 +1238,19 @@ class Packages(Bcfg2.Server.Plugin.Plugin, if has_yum: # add the key to the specification to ensure it # gets installed - kinfo = yum.misc.getgpgkeyinfo(kdata) - version = yum.misc.keyIdToRPMVer(kinfo['keyid']) - release = yum.misc.keyIdToRPMVer(kinfo['timestamp']) - - lxml.etree.SubElement(keypkg, 'Instance', version=version, - release=release, simplefile=remotekey) + try: + kinfo = yum.misc.getgpgkeyinfo(kdata) + version = yum.misc.keyIdToRPMVer(kinfo['keyid']) + release = yum.misc.keyIdToRPMVer(kinfo['timestamp']) + + lxml.etree.SubElement(keypkg, 'Instance', + version=version, + release=release, + simplefile=remotekey) + except ValueError: + err = sys.exc_info()[1] + self.logger.error("Could not read GPG key %s: %s" % + (localkey, err)) else: self.logger.info("Yum libraries not found; GPG keys will " "not be handled automatically") -- cgit v1.2.3-1-g7c22