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)