Difference between revisions of "Jinja"
Jump to navigation
Jump to search
| Line 6: | Line 6: | ||
$ nano example.py | $ nano example.py | ||
``` | ``` | ||
| − | from jinja2 import Template | + | from jinja2 import Template, StrictUndefined |
import os | import os | ||
template = Template("Hello {{ env['MYENVVAR'] or 'DefaultVal' }}", undefined=StrictUndefined) | template = Template("Hello {{ env['MYENVVAR'] or 'DefaultVal' }}", undefined=StrictUndefined) | ||
| Line 29: | Line 29: | ||
with open('configMap.yml.jinja') as f_: | with open('configMap.yml.jinja') as f_: | ||
| − | template = Template(f_.read()) | + | template = Template(f_.read(), undefined=StrictUndefined) |
txt = template.render(targs) | txt = template.render(targs) | ||
with open('configMap.yml', 'w') as f_: | with open('configMap.yml', 'w') as f_: | ||
f_.write(txt) | f_.write(txt) | ||
``` | ``` | ||
Latest revision as of 16:15, 10 October 2021
$ export MYENVVAR=foo
$ nano example.py
from jinja2 import Template, StrictUndefined
import os
template = Template("Hello {{ env['MYENVVAR'] or 'DefaultVal' }}", undefined=StrictUndefined)
r = template.render(env=os.environ, name='somethingelse')
print(r)
Run template
$ python3 example.py
https://jinja.palletsprojects.com/en/2.11.x/intro/
Other Methods
targs = {}
targs['MYENVVAR'] = os.getenv('MYENVVAR')
with open('configMap.yml.jinja') as f_:
template = Template(f_.read(), undefined=StrictUndefined)
txt = template.render(targs)
with open('configMap.yml', 'w') as f_:
f_.write(txt)