diff options
author | Alexander Sulfrian <alexander@sulfrian.net> | 2013-03-08 03:43:45 +0100 |
---|---|---|
committer | Alexander Sulfrian <alexander@sulfrian.net> | 2015-05-10 16:25:27 +0200 |
commit | 2ab4e18d5f2f0caabc60d4aa44e8f9026be79196 (patch) | |
tree | 719fea09c47fddfb5a21345d72eb40a847bdbfab /src/lib | |
parent | a421270df079eebb4365375e3a39693a21b3a221 (diff) | |
download | bcfg2-2ab4e18d5f2f0caabc60d4aa44e8f9026be79196.tar.gz bcfg2-2ab4e18d5f2f0caabc60d4aa44e8f9026be79196.tar.bz2 bcfg2-2ab4e18d5f2f0caabc60d4aa44e8f9026be79196.zip |
Client/Tools/APT: save new package version for auto pkgs
For auto/any packages, currently only auto/any is stored in the
statistics as the new installed version. This patch changes this
behavior, so that the exact version string is saved additionaly.
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/Bcfg2/Client/Tools/APT.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/lib/Bcfg2/Client/Tools/APT.py b/src/lib/Bcfg2/Client/Tools/APT.py index b18fee359..d2fcaa23d 100644 --- a/src/lib/Bcfg2/Client/Tools/APT.py +++ b/src/lib/Bcfg2/Client/Tools/APT.py @@ -184,13 +184,15 @@ class APT(Bcfg2.Client.Tools.Tool): pkg = self.pkg_cache[pkgname] installed_version = pkg.installed.version - if entry.get('version') == 'auto': + if entry.get('version').startswith('auto'): if pkg.is_upgradable: desired_version = pkg.candidate.version else: desired_version = installed_version - elif entry.get('version') == 'any': + entry.set('version', "auto: %s" % desired_version) + elif entry.get('version').startswith('any'): desired_version = installed_version + entry.set('version', "any: %s" % desired_version) else: desired_version = entry.get('version') if desired_version != installed_version: @@ -233,7 +235,7 @@ class APT(Bcfg2.Client.Tools.Tool): self.logger.error("APT has no information about package %s" % pkgname) continue - if pkg.get('version') in ['auto', 'any']: + if any([pkg.get('version').startswith(v) for v in ['auto', 'any']]): try: ipkgs.append("%s=%s" % ( pkgname, |