Skip to main content

A CLI tool for generating files from Jinja2 templates and environment variables.

Project description

https://travis-ci.org/adarnimrod/template.svg?branch=master

A CLI tool for generating files from Jinja2 templates and environment variables.

Examples

$ template -h
usage: template [-h] [-o OUTPUT] [filename]

A CLI tool for generating files from Jinja2 templates and environment
variables.

positional arguments:
  filename              Input filename

  optional arguments:
    -h, --help            show this help message and exit
      -o OUTPUT, --output OUTPUT
                              Output to filename
$ export name='John'
$ echo 'Hello {{ name if name is defined else 'world' }}. | template
Hello John.
$ echo '{{ USER }}' > username.j2
$ template --output username.txt username.j2
$ cat username.txt
John

Jinja filters

The following Jinja filters were added:

  • to_yaml: Convert to yaml.

  • from_yaml: Convert from yaml.

  • to_json: Convert to json.

  • from_json: Convert from json.

  • combine: Combine 2 dictionaries.

  • to_toml: Convert to toml.

  • from_toml: Convert from toml.

  • jmespath: Queries data using the JMESPath query language.

Example usage can be seen in tests.sh and for specific filters in the docstrings in template/filters.py.

Testing

Tests require Python 2.7, Python 3.3 or later and Tox and are run by running tox. Also, Travis CI is used to test on multiple Python versions for every push.

Release

Releases require Python 2.7 or Python 3.3 or later and Tox. To release a new version bump the version in the VERSION file and run tox -e release.

License

This software is licensed under the AGPL 3+ license (see the LICENSE.txt file).

Author

Nimrod Adar, contact me or visit my website. Patches are welcome via git send-email. The repository is located at: https://www.shore.co.il/git/.

TODO

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

template-0.4.2-py2.py3-none-any.whl (6.4 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page