diff --git a/lib/ansible/utils/__init__.py b/lib/ansible/utils/__init__.py index 1541be5783c..a735e9c0b0e 100644 --- a/lib/ansible/utils/__init__.py +++ b/lib/ansible/utils/__init__.py @@ -48,7 +48,6 @@ import sys import json import subprocess import contextlib -import jinja2.exceptions from vault import VaultLib @@ -1469,15 +1468,11 @@ def listify_lookup_plugin_terms(terms, basedir, inject): # if not already a list, get ready to evaluate with Jinja2 # not sure why the "/" is in above code :) try: - new_terms = template.template(basedir, terms, inject, convert_bare=True, fail_on_undefined=C.DEFAULT_UNDEFINED_VAR_BEHAVIOR) + new_terms = template.template(basedir, "{{ %s }}" % terms, inject) if isinstance(new_terms, basestring) and "{{" in new_terms: pass else: terms = new_terms - except errors.AnsibleUndefinedVariable: - raise - except jinja2.exceptions.UndefinedError, e: - raise errors.AnsibleUndefinedVariable('undefined variable in items: %s' % e) except: pass diff --git a/test/units/TestUtils.py b/test/units/TestUtils.py index d93fc70329b..99dd24565c6 100644 --- a/test/units/TestUtils.py +++ b/test/units/TestUtils.py @@ -566,17 +566,9 @@ class TestUtils(unittest.TestCase): def test_listify_lookup_plugin_terms(self): basedir = os.path.dirname(__file__) - # Straight lookups - self.assertEqual(ansible.utils.listify_lookup_plugin_terms('things', basedir, dict(things=[])), []) - self.assertEqual(ansible.utils.listify_lookup_plugin_terms('things', basedir, dict(things=['one', 'two'])), ['one', 'two']) - - # Variable interpolation - self.assertEqual(ansible.utils.listify_lookup_plugin_terms('things', basedir, dict(things=['{{ foo }}', '{{ bar }}'], foo="hello", bar="world")), - ['hello', 'world']) - with self.assertRaises(ansible.errors.AnsibleError) as ex: - ansible.utils.listify_lookup_plugin_terms('things', basedir, dict(things=['{{ foo }}', '{{ bar_typo }}'], foo="hello", bar="world")) - self.assertTrue("undefined variable in items: 'bar_typo'" in ex.exception.msg) + #self.assertEqual(ansible.utils.listify_lookup_plugin_terms('things', basedir, dict(things=[])), []) + #self.assertEqual(ansible.utils.listify_lookup_plugin_terms('things', basedir, dict(things=['one', 'two'])), ['one', 'two']) def test_deprecated(self): sys_stderr = sys.stderr