From ca680aea4056f35ae275187557ca153b0e0d55a8 Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Mon, 10 Jul 2006 16:00:28 +0000 Subject: Two bugfixes from Ti's bugreports git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@1920 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Client/Redhat.py | 2 +- src/lib/Client/Toolset.py | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/lib/Client/Redhat.py b/src/lib/Client/Redhat.py index 3eb3b2a6e..c38778454 100644 --- a/src/lib/Client/Redhat.py +++ b/src/lib/Client/Redhat.py @@ -99,7 +99,7 @@ class ToolsetImpl(Toolset): if entry.get('version') == self.installed[entry.get('name')]: if entry.get('multiarch'): archs = entry.get('multiarch').split() - info = self.saferun('rpm -q %s --qf "%{NAME} %{VERSION}-%{RELEASE} %{ARCH}\n"' % (entry.get('name')))[1] + info = self.saferun('rpm -q %s --qf "%%{NAME} %%{VERSION}-%%{RELEASE} %%{ARCH}\n"' % (entry.get('name')))[1] while info: (_, vers, arch) = info.pop() if arch in archs: diff --git a/src/lib/Client/Toolset.py b/src/lib/Client/Toolset.py index 598ec9293..4035402b8 100644 --- a/src/lib/Client/Toolset.py +++ b/src/lib/Client/Toolset.py @@ -191,7 +191,11 @@ class Toolset(object): failures = [key for key in ent.attrib if key[:8] == 'current_'] for fail in failures: for field in [fail, fail[8:]]: - newent.set(field, ent.get(field)) + try: + newent.set(field, ent.get(field)) + except TypeError: + self.logger.error("Failed to set field %s for entry %s, value" % + (field, ent.get('name'), ent.get(field))) if 'severity' in ent.attrib: newent.set('severity', ent.get('severity')) #if ent.tag not in ['Package', 'Service', 'SymLink', 'ConfigFile']: @@ -207,7 +211,11 @@ class Toolset(object): failures = [key for key in ent.attrib if key[:8] == 'current_'] for fail in failures: for field in [fail, fail[8:]]: - newent.set(field, ent.get(field)) + try: + newent.set(field, ent.get(field)) + except TypeError: + self.logger.error("Failed to set field %s for entry %s, value" % + (field, ent.get('name'), ent.get(field))) if 'severity' in ent.attrib: newent.set('severity', ent.get('severity')) if self.extra_services + self.pkgwork['remove']: -- cgit v1.2.3-1-g7c22