Merge pull request #3606 from stoned/fix-3521-2

Quote pathnames of roles' tasks and handlers files so that _load_tasks()...
This commit is contained in:
Michael DeHaan 2013-07-20 14:58:12 -07:00
commit 1c21fc48b9

View file

@ -21,6 +21,7 @@ from ansible.utils.template import template
from ansible import utils
from ansible import errors
from ansible.playbook.task import Task
import pipes
import shlex
import os
@ -185,13 +186,13 @@ class Play(object):
if not os.path.isfile(task) and not os.path.isfile(handler) and not os.path.isfile(vars_file) and not os.path.isdir(library):
raise errors.AnsibleError("found role at %s, but cannot find %s or %s or %s or %s" % (path, task, handler, vars_file, library))
if os.path.isfile(task):
nt = dict(include=task, vars=has_dict)
nt = dict(include=pipes.quote(task), vars=has_dict)
for k in special_keys:
if k in special_vars:
nt[k] = special_vars[k]
new_tasks.append(nt)
if os.path.isfile(handler):
nt = dict(include=handler, vars=has_dict)
nt = dict(include=pipes.quote(handler), vars=has_dict)
for k in special_keys:
if k in special_vars:
nt[k] = special_vars[k]