Merge pull request #12881 from Scypho/devel
fix for issue #11885 - allowing json in lookup template calls
This commit is contained in:
commit
958fb29b78
2 changed files with 6 additions and 1 deletions
|
@ -273,6 +273,10 @@ Here are some examples::
|
||||||
|
|
||||||
- debug: msg="{{ lookup('template', './some_template.j2') }} is a value from evaluation of this template"
|
- debug: msg="{{ lookup('template', './some_template.j2') }} is a value from evaluation of this template"
|
||||||
|
|
||||||
|
# loading a json file from a template as a string
|
||||||
|
- debug: msg="{{ lookup('template', './some_json.json.j2', convert_data=False) }} is a value from evaluation of this template"
|
||||||
|
|
||||||
|
|
||||||
- debug: msg="{{ lookup('etcd', 'foo') }} is a value from a locally running etcd"
|
- debug: msg="{{ lookup('etcd', 'foo') }} is a value from a locally running etcd"
|
||||||
|
|
||||||
# shelvefile lookup retrieves a string value corresponding to a key inside a Python shelve file
|
# shelvefile lookup retrieves a string value corresponding to a key inside a Python shelve file
|
||||||
|
|
|
@ -34,6 +34,7 @@ class LookupModule(LookupBase):
|
||||||
|
|
||||||
def run(self, terms, variables, **kwargs):
|
def run(self, terms, variables, **kwargs):
|
||||||
|
|
||||||
|
convert_data_p = kwargs.get('convert_data', True)
|
||||||
basedir = self.get_basedir(variables)
|
basedir = self.get_basedir(variables)
|
||||||
|
|
||||||
ret = []
|
ret = []
|
||||||
|
@ -53,7 +54,7 @@ class LookupModule(LookupBase):
|
||||||
searchpath.insert(1, variables['role_path'])
|
searchpath.insert(1, variables['role_path'])
|
||||||
|
|
||||||
self._templar.environment.loader.searchpath = searchpath
|
self._templar.environment.loader.searchpath = searchpath
|
||||||
res = self._templar.template(template_data, preserve_trailing_newlines=True)
|
res = self._templar.template(template_data, preserve_trailing_newlines=True,convert_data=convert_data_p)
|
||||||
ret.append(res)
|
ret.append(res)
|
||||||
else:
|
else:
|
||||||
raise AnsibleError("the template file %s could not be found for the lookup" % term)
|
raise AnsibleError("the template file %s could not be found for the lookup" % term)
|
||||||
|
|
Loading…
Reference in a new issue