From 5d4d6152298f85ae36e775351a26a0bd9bdd52b3 Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Wed, 10 Dec 2008 17:17:54 +0000 Subject: Merge branch 'tools' git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@4992 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Client/Tools/APT.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src') diff --git a/src/lib/Client/Tools/APT.py b/src/lib/Client/Tools/APT.py index 82819c564..1acd70cae 100644 --- a/src/lib/Client/Tools/APT.py +++ b/src/lib/Client/Tools/APT.py @@ -138,6 +138,7 @@ class APT(Bcfg2.Client.Tools.Tool): # it looks like you can't install arbitrary versions of software # out of the pkg cache, we will still need to call apt-get ipkgs = [] + bad_pkgs = [] for pkg in packages: if not self.pkg_cache.has_key(pkg.get('name')): self.logger.error("APT has no information about package %s" % (pkg.get('name'))) @@ -149,6 +150,13 @@ class APT(Bcfg2.Client.Tools.Tool): if pkg.get('version') in \ [p.VerStr for p in self.pkg_cache[pkg.get('name')]._pkg.VersionList]: ipkgs.append("%s=%s" % (pkg.get('name'), pkg.get('version'))) + continue + bad_pkgs.append(pkg.get('name')) + if bad_pkgs: + self.logger.error("Cannot find correct versions of packages:") + self.logger.error(bad_pkgs) + if not ipkgs: + return rc = self.cmd.run(self.pkgcmd % (" ".join(ipkgs)))[0] if rc: self.logger.error("APT command failed") -- cgit v1.2.3-1-g7c22