diff options
author | Mike McCallister <mike@mccllstr.com> | 2011-10-15 22:06:31 -0500 |
---|---|---|
committer | Mike McCallister <mike@mccllstr.com> | 2011-10-15 23:41:21 -0500 |
commit | 826f385767ccf9f608fcfbe35e381a9dbc59db4b (patch) | |
tree | 2320daecca65d435d78e37f4fd213cd41119a07a /src/lib/Server/Plugins/Packages/__init__.py | |
parent | 17a031da6ec2ee448ee3d8e18dde5c6a3785c464 (diff) | |
download | bcfg2-826f385767ccf9f608fcfbe35e381a9dbc59db4b.tar.gz bcfg2-826f385767ccf9f608fcfbe35e381a9dbc59db4b.tar.bz2 bcfg2-826f385767ccf9f608fcfbe35e381a9dbc59db4b.zip |
Improve error handling of Packages plugin.
Provide a descriptive error message that avoids logging a traceback.
Error out (instead of continuing) upon receiving an HTTP error or an
indication that the URL is malformed.
Only write data to the cache file if it was successfully retrieved
from the URL.
Make log messages for Packages plugin use consistent "Packages:" prefix.
Diffstat (limited to 'src/lib/Server/Plugins/Packages/__init__.py')
-rw-r--r-- | src/lib/Server/Plugins/Packages/__init__.py | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/lib/Server/Plugins/Packages/__init__.py b/src/lib/Server/Plugins/Packages/__init__.py index 4fe785f40..3ee4f21dd 100644 --- a/src/lib/Server/Plugins/Packages/__init__.py +++ b/src/lib/Server/Plugins/Packages/__init__.py @@ -140,7 +140,7 @@ class Packages(Bcfg2.Server.Plugin.Plugin, base.update(collection.get_group(pkg.get("group"))) to_remove.append(pkg) else: - self.logger.error("Malformed Package: %s" % + self.logger.error("Packages: Malformed Package: %s" % lxml.etree.tostring(pkg)) base.update(initial) for el in to_remove: @@ -148,10 +148,10 @@ class Packages(Bcfg2.Server.Plugin.Plugin, packages, unknown = collection.complete(base) if unknown: - self.logger.info("Got %d unknown entries" % len(unknown)) - self.logger.info(list(unknown)) + self.logger.info("Packages: Got %d unknown entries" % len(unknown)) + self.logger.info("Packages: %s" % list(unknown)) newpkgs = list(packages.difference(initial)) - self.logger.debug("%d initial, %d complete, %d new" % + self.logger.debug("Packages: %d initial, %d complete, %d new" % (len(initial), len(packages), len(newpkgs))) newpkgs.sort() for pkg in newpkgs: @@ -221,7 +221,7 @@ class Packages(Bcfg2.Server.Plugin.Plugin, keyfiles.append(localfile) if ((force_update and key not in keys) or not os.path.exists(localfile)): - self.logger.info("Downloading and parsing %s" % key) + self.logger.info("Packages: Downloading and parsing %s" % key) response = urlopen(key) open(localfile, 'w').write(response.read()) keys.append(key) |