diff options
author | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2012-04-16 14:48:27 -0700 |
---|---|---|
committer | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2012-04-16 14:48:27 -0700 |
commit | 36d0ef522bc3c8fdb2de0c448843267a443a5172 (patch) | |
tree | 7f99d489325d2fd1786da3f05f8adf8c473e2438 | |
parent | 3be82d87b4463d0f421d65de08d9377e178a0ff0 (diff) | |
parent | 74be9f46696308e05b6097c7968043a90df06de4 (diff) | |
download | bcfg2-36d0ef522bc3c8fdb2de0c448843267a443a5172.tar.gz bcfg2-36d0ef522bc3c8fdb2de0c448843267a443a5172.tar.bz2 bcfg2-36d0ef522bc3c8fdb2de0c448843267a443a5172.zip |
Merge pull request #24 from lukecyca/maint
Fixes for MacPorts and launchd
-rw-r--r-- | src/lib/Client/Tools/MacPorts.py | 9 | ||||
-rw-r--r-- | src/lib/Client/Tools/launchd.py | 7 |
2 files changed, 12 insertions, 4 deletions
diff --git a/src/lib/Client/Tools/MacPorts.py b/src/lib/Client/Tools/MacPorts.py index e84d3e553..2a7ba9eb9 100644 --- a/src/lib/Client/Tools/MacPorts.py +++ b/src/lib/Client/Tools/MacPorts.py @@ -38,13 +38,20 @@ class MacPorts(Bcfg2.Client.Tools.PkgTool): return False if entry.attrib['name'] in self.installed: - if self.installed[entry.attrib['name']] == entry.attrib['version']: + if (self.installed[entry.attrib['name']] == entry.attrib['version'] or + entry.attrib['version'] == 'any'): #if not self.setup['quick'] and \ # entry.get('verify', 'true') == 'true': #FIXME: We should be able to check this once # http://trac.macports.org/ticket/15709 is implemented return True else: + self.logger.info(" %s: Wrong version installed. " + "Want %s, but have %s" % (entry.get("name"), + entry.get("version"), + self.installed[entry.get("name")], + )) + entry.set('current_version', self.installed[entry.get('name')]) return False entry.set('current_exists', 'false') diff --git a/src/lib/Client/Tools/launchd.py b/src/lib/Client/Tools/launchd.py index e70d7d83e..d7cbfa07f 100644 --- a/src/lib/Client/Tools/launchd.py +++ b/src/lib/Client/Tools/launchd.py @@ -37,10 +37,11 @@ class launchd(Bcfg2.Client.Tools.Tool): else: d = daemon label = self.cmd.run('defaults read %s/%s Label' % - (directory, d))[1] + (directory, d))[1][0] self.plistMapping[label] = "%s/%s" % (directory, daemon) - except KeyError: # perhaps this could be more robust - pass + except KeyError: + self.logger.warning("Could not get label from %s/%s" % + (directory, daemon)) def FindPlist(self, entry): return self.plistMapping.get(entry.get('name'), None) |