Skip to main content

a command line interface to jinja;

Project description

jinja-cli

a command line interface to jinja;

this program renders a jinja template using input data; data may be read from a file, environment variables, or command line arguments; either template or data file may be read from stdin; output file may be written to stdout;

supported data formats: ini, json, xml, yaml;

install

pip install jinja-cli

usage

to render a jinja template with data in json format:

# jinja -d {data} {template}

to use a different data format:

# jinja -d {data} -f {data_format} {template}

to read template from stdin:

# jinja -d {data} < {template}

to read data from stdin:

# jinja -d - {template} < {data}

to read data from command line arguments:

# jinja -D {key} {value} [ -D {key} {value} ... ] {template}

to read data from environment variables:

# jinja -E {key} [ -E {key} ... ] {template}

to read data from environment variables using regex:

# jinja -X {regex} {template}

to output to a file:

# jinja -d {data} -o {output} {template}

example

template file example.j2:

sheep eat {{ sheep.eat }};

data file example.json:

{
    "sheep": {
        "eat": "grass"
    }
}

any of these commands:

# jinja -d example.json example.j2
# jinja -d example.json < example.j2
# jinja -d - -f json example.j2 < example.json

output:

sheep eat grass;

data priority

data priority from low to high:

  • environment variables: -E, --env, -X, --env-regex;

  • data file: -d, --data;

  • command line arguments: -D, --define;

undefined variables

option -u, --undefined sets how undefined variables are handled:

  • '': an undefined variable can be printed and iterated over; this is the default;

  • 'chainable': an undefined variable is chainable;

  • 'debug': an undefined variable returns debug info when printed;

  • 'strict': an undefined variable barks on print, iteration, boolean tests and comparisons;

license

Copyright (C) 2018-2021 Cyker Way

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Project details


Download files

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

Source Distribution

jinja-cli-1.2.2.tar.gz (18.9 kB view details)

Uploaded Source

Built Distribution

jinja_cli-1.2.2-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file jinja-cli-1.2.2.tar.gz.

File metadata

  • Download URL: jinja-cli-1.2.2.tar.gz
  • Upload date:
  • Size: 18.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.9

File hashes

Hashes for jinja-cli-1.2.2.tar.gz
Algorithm Hash digest
SHA256 3a702c4a988046e02e08d7cf40a362bf2050aeafe08d926a54bc395610f0f5a2
MD5 ac91fc03f61959bcfabceb5cc7633353
BLAKE2b-256 4bca94afaf5fd47c6a3bd92c9eebc21cc284961e4a954e4860d8b526291d59ad

See more details on using hashes here.

File details

Details for the file jinja_cli-1.2.2-py3-none-any.whl.

File metadata

  • Download URL: jinja_cli-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.9

File hashes

Hashes for jinja_cli-1.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 86afa68cb2c2626cb447a445b3ab41e5da59dbe3fafa609a4624fda9b250fde9
MD5 34b72bccda3b7a4efffb5bf4c7e2bc1f
BLAKE2b-256 fee15d12ac001a76aff2668383b1af4728941be57757e64ade5bb6c0cb2b3527

See more details on using hashes here.

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