Merge pull request #2656 from dstoflet/first_available_file_fix

Quick fix for first_available_file and role support
This commit is contained in:
Michael DeHaan 2013-04-12 08:56:26 -07:00
commit 85099be48f
2 changed files with 5 additions and 4 deletions

View file

@ -55,10 +55,11 @@ class ActionModule(object):
if 'first_available_file' in inject:
found = False
for fn in inject.get('first_available_file'):
fn_orig = fn
fn = template.template(self.runner.basedir, fn, inject)
fn = utils.path_dwim(self.runner.basedir, fn)
if not os.path.exists(fn) and '_original_file' in inject:
fn = utils.path_dwim_relative(inject['_original_file'], 'files', fn, self.runner.basedir, check=False)
fn = utils.path_dwim_relative(inject['_original_file'], 'files', fn_orig, self.runner.basedir, check=False)
if os.path.exists(fn):
source = fn
found = True

View file

@ -54,15 +54,15 @@ class ActionModule(object):
# look up the files and use the first one we find as src
if 'first_available_file' in inject:
found = False
for fn in self.runner.module_vars.get('first_available_file'):
fn_orig = fn
fnt = template.template(self.runner.basedir, fn, inject)
fnd = utils.path_dwim(self.runner.basedir, fnt)
if not os.path.exists(fnd) and '_original_file' in inject:
fnd = utils.path_dwim_relative(inject['_original_file'], 'templates', fnd, self.runner.basedir, check=False)
fnd = utils.path_dwim_relative(inject['_original_file'], 'templates', fn_orig, self.runner.basedir, check=False)
if os.path.exists(fnd):
source = fnt
source = fnd
found = True
break
if not found: