{ "info": { "author": "Nimrod Adar", "author_email": "nimrod@shore.co.il", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Utilities" ], "description": "Template\n########\n\n.. image:: https://travis-ci.org/adarnimrod/template.svg?branch=master\n :target: https://travis-ci.org/adarnimrod/template\n\nA CLI tool for generating files from `Jinja2 `_\ntemplates and environment variables. Tested on Python versions 2.7, 3.5 and\nlater.\n\nExamples\n--------\n\n.. code:: shell\n\n $ template -h\n usage: template [-h] [-o OUTPUT] [filename]\n\n A CLI tool for generating files from Jinja2 templates and environment\n variables.\n\n positional arguments:\n filename Input filename\n\n optional arguments:\n -h, --help show this help message and exit\n -o OUTPUT, --output OUTPUT\n Output to filename\n $ export name='John'\n $ echo 'Hello {{ name if name is defined else 'world' }}. | template\n Hello John.\n $ echo '{{ USER }}' > username.j2\n $ template --output username.txt username.j2\n $ cat username.txt\n John\n\n\nJinja filters\n-------------\n\nThe following Jinja filters were added:\n\n- :code:`to_yaml`: Convert to yaml.\n- :code:`from_yaml`: Convert from yaml.\n- :code:`to_json`: Convert to json.\n- :code:`from_json`: Convert from json.\n- :code:`to_toml`: Convert to toml.\n- :code:`from_toml`: Convert from toml.\n- :code:`jmespath`: Queries data using the `JMESPath `_\n query language.\n- :code:`run`: Runs a command and returns the stdout, stderr and returncode\n using `run\n `_.\n\nExample usage can be seen in :code:`tests` and for specific filters in the\ndocstrings in :code:`template/filters.py`.\n\nTesting\n-------\n\nTests require Python 3.7, `pipenv `_ and\n`Bats `_. Run the tests with the\nfollowing commands:\n\n.. code:: shell\n\n pipenv run lint # Pre-commit hooks.\n pipenv run check # Twine check.\n pipenv run doctest # Doc tests.\n pipenv run bats # Bats tests.\n\nAlso, Travis CI is setup for this project so every push to this repository is\nchecked with all supported Python versions.\n\nRelease\n-------\n\nRelease requires Python 3.7 and `pipenv `_. To bump the\nversion run :code:`pipenv run bumpversion major|minor|patch` to update the\nversion and git commit and tag. Then run :code:`pipenv run upload` to upload the\nnew version to PyPI and :code:`git push --follow-tags` to push the git commit\nand tag.\n\nLicense\n-------\n\nThis software is licensed under the AGPL 3+ license (see the :code:`LICENSE.txt`\nfile).\n\nAuthor\n------\n\nNimrod Adar, `contact me `_ or visit my `website\n`_. Patches are welcome via `git send-email\n`_. The repository is located\nat: https://www.shore.co.il/git/.\n\nPending tasks\n-------------\n\n- Release on tagged commits to PyPI in Travis CI\n (https://docs.travis-ci.com/user/deployment/pypi/ and\n https://docs.travis-ci.com/user/encryption-keys/).\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://www.shore.co.il/git/template", "keywords": "config configuration jinja template environment", "license": "AGPLv3+", "maintainer": "", "maintainer_email": "", "name": "template", "package_url": "https://pypi.org/project/template/", "platform": "", "project_url": "https://pypi.org/project/template/", "project_urls": { "Homepage": "https://www.shore.co.il/git/template" }, "release_url": "https://pypi.org/project/template/0.5.1/", "requires_dist": [ "Jinja2", "PyYAML", "jmespath", "toml", "subprocess32 (>=3.5.0) ; python_version < \"3.5\"", "pipenv ; extra == 'dev'" ], "requires_python": "", "summary": "A CLI tool for generating files from Jinja2 templates and environment variables.", "version": "0.5.1" }, "last_serial": 5566761, "releases": { "0.4.0": [ { "comment_text": "", "digests": { "md5": "c6ead02996304b0245ce8077d0d02651", "sha256": "027bc2b9fa7ba9470ab272e5f0e2e9e846ac781c2b5371468dc7b64c28a1c42e" }, "downloads": -1, "filename": "template-0.4.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "c6ead02996304b0245ce8077d0d02651", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6594, "upload_time": "2017-01-24T20:05:09", "url": "https://files.pythonhosted.org/packages/59/42/ff58f81c49985a3652533c9de60ed6e8636b023f114cf08ebfc257c1e4d4/template-0.4.0-py2.py3-none-any.whl" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "f1e0e399afc5b792aab28478492264da", "sha256": "28b3e7f087e007dd93bd01b283cfa0b3efd289f06a5aaa54792fd2f0c2ac6606" }, "downloads": -1, "filename": "template-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f1e0e399afc5b792aab28478492264da", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6596, "upload_time": "2017-01-24T20:13:22", "url": "https://files.pythonhosted.org/packages/f2/4a/b52ded6aa87a6788079bab37202288098d6ef3b6f9510fff17b1b6b7425a/template-0.4.1-py2.py3-none-any.whl" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "04f7767e3af27543e1ca0e93b9107b5a", "sha256": "2a51cc20a9e547fbc628e88dbcf94f013ac10226febe914e4e83a6c26a61ef54" }, "downloads": -1, "filename": "template-0.4.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "04f7767e3af27543e1ca0e93b9107b5a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6429, "upload_time": "2017-04-15T17:23:13", "url": "https://files.pythonhosted.org/packages/79/05/dc3caf76796650cef360ea41c5a7ef10bd502773e3c5d56787b62d26b304/template-0.4.2-py2.py3-none-any.whl" } ], "0.4.7": [ { "comment_text": "", "digests": { "md5": "eef0a2c7e419025f659cc397df9a74d3", "sha256": "144c7f20f20e9918b522d35feeffd9984ce7dda420a9f556b47d7fe644238fee" }, "downloads": -1, "filename": "template-0.4.7-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "eef0a2c7e419025f659cc397df9a74d3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16712, "upload_time": "2019-07-01T13:20:45", "url": "https://files.pythonhosted.org/packages/50/20/404a853a3441dd03a8d9941c3ea8664ba60ec211af6f6cdc28871754d557/template-0.4.7-py2.py3-none-any.whl" } ], "0.4.8": [ { "comment_text": "", "digests": { "md5": "76cde5d3032a3b6cab86e3ad6356f23a", "sha256": "d60f818471a6c60f03e1aeb7cd4295800750da6eda33737a3963690f811f74b5" }, "downloads": -1, "filename": "template-0.4.8-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "76cde5d3032a3b6cab86e3ad6356f23a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16750, "upload_time": "2019-07-01T13:28:18", "url": "https://files.pythonhosted.org/packages/60/4e/ef793d09852b7af012bc8f3a8c8b917cd69a4a0bb958d7849bb358d95bbe/template-0.4.8-py2.py3-none-any.whl" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "ff4d14e62ab9a6f922a6623c3bbb120d", "sha256": "f975b8880bc2b24778f309496d8a47224256e7f4d9fa0838464a6b98893c1bfb" }, "downloads": -1, "filename": "template-0.5.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "ff4d14e62ab9a6f922a6623c3bbb120d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17144, "upload_time": "2019-07-22T10:00:57", "url": "https://files.pythonhosted.org/packages/47/9a/c360b046962dd2a70645613a389b21ee75514cf720cf98aaace3186f773a/template-0.5.0-py2.py3-none-any.whl" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "46fd75080d0bff44a2f91882b134ad49", "sha256": "b42335b40e4493f667c45ad6856e1478244014fd6ac6280ee71759f390ebf65a" }, "downloads": -1, "filename": "template-0.5.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "46fd75080d0bff44a2f91882b134ad49", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17197, "upload_time": "2019-07-22T10:45:58", "url": "https://files.pythonhosted.org/packages/33/eb/611e88ad9d0351fbccb3792a22c612a2b175b51854d03177a5b13f45bb6b/template-0.5.1-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "46fd75080d0bff44a2f91882b134ad49", "sha256": "b42335b40e4493f667c45ad6856e1478244014fd6ac6280ee71759f390ebf65a" }, "downloads": -1, "filename": "template-0.5.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "46fd75080d0bff44a2f91882b134ad49", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17197, "upload_time": "2019-07-22T10:45:58", "url": "https://files.pythonhosted.org/packages/33/eb/611e88ad9d0351fbccb3792a22c612a2b175b51854d03177a5b13f45bb6b/template-0.5.1-py2.py3-none-any.whl" } ] }