Set basedir to . if there isn't one

This avoids special-casing '' = '.' everywhere the basedir gets used.
Fixes #1729.
parent 0f170622
......@@ -115,7 +115,7 @@ class PlayBook(object):
else:
self.inventory = inventory
self.basedir = os.path.dirname(playbook)
self.basedir = os.path.dirname(playbook) or '.'
(self.playbook, self.play_basedirs) = self._load_playbook_from_file(playbook)
# *****************************************************
......@@ -132,7 +132,7 @@ class PlayBook(object):
if type(playbook_data) != list:
raise errors.AnsibleError("parse error: playbooks must be formatted as a YAML list")
basedir = os.path.dirname(path)
basedir = os.path.dirname(path) or '.'
utils.plugins.push_basedir(basedir)
for play in playbook_data:
if type(play) != dict:
......
......@@ -49,8 +49,6 @@ class Connection(object):
vvv("EXEC %s" % cmd, host=self.host)
basedir = self.runner.basedir
if basedir == '':
basedir = '.'
p = subprocess.Popen(cmd, cwd=basedir, shell=True, stdin=None,
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = p.communicate()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment