diff --git a/lib/ansible/utils/template.py b/lib/ansible/utils/template.py index f7b0931d3e..78b6487642 100644 --- a/lib/ansible/utils/template.py +++ b/lib/ansible/utils/template.py @@ -183,6 +183,10 @@ def _legacy_varFind(basedir, text, vars, lookup_fatal, depth, expand_lists): args = args.strip() # args have to be templated args = legacy_varReplace(basedir, args, vars, lookup_fatal, depth + 1, True) + if isinstance(args, basestring) and args.find('$') != -1: + # unable to evaluate something like $FILE($item) at this point, try to evaluate later + return None + instance = utils.plugins.lookup_loader.get(lookup_plugin_name.lower(), basedir=basedir) if instance is not None: