summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2012-04-16 14:48:27 -0700
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2012-04-16 14:48:27 -0700
commit36d0ef522bc3c8fdb2de0c448843267a443a5172 (patch)
tree7f99d489325d2fd1786da3f05f8adf8c473e2438
parent3be82d87b4463d0f421d65de08d9377e178a0ff0 (diff)
parent74be9f46696308e05b6097c7968043a90df06de4 (diff)
downloadbcfg2-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.py9
-rw-r--r--src/lib/Client/Tools/launchd.py7
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)