{ "info": { "author": "Runzhou Li (Leo)", "author_email": "me@runzhou.li", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "\nprint-env\n===\n\n[![Build Status](https://travis-ci.org/woozyking/print-env.svg?branch=master)](https://travis-ci.org/woozyking/print-env)\n[![PyPI version](https://badge.fury.io/py/print-env.svg)](https://pypi.org/project/print-env)\n\nCLI to print environment variables from supported files.\n\nThis is derived from projects that:\n\n- Use environment variables as the main interface for configuration\n- Use source-control ignored files to store environment variables for scenarios such as local development\n\n## Install\n\n```bash\n$ pipenv install print-env\n# or\n$ pip install print-env\n```\n\n## Usage\n\nAssume a `.env` file that contains the following content:\n\n```bash\n# .env\nFLASK_APP=app.py\nFLASK_DEBUG=1\nSQL_URI=\n# and more...\n```\n\nThen simply\n\n```bash\n$ print-env\nFLASK_APP=app.py FLASK_DEBUG=1 SQL_URI= # and more...\n```\n\nThe above would print out environment variables stored in `.env`, or `env.yml`, or `env.json` (roughly attempted in this order). You can also exclusively specify the file:\n\n```bash\n$ print-env /path/to/env/file.yml\n```\n\nand the script would attempt to parse the file based on its extension given. Note that any file extension that is not of YAML or JSON type is attempted as a dotenv file.\n\nIn fact, you can specify a series of files. Note that in case of duplicates, the last files take precedence, for example:\n\n```bash\n# content of base.env\nLOG_LVL=warning\nAPI_TOKEN=aabbcc\n```\n\n```bash\n# content of dev.env\nLOG_LVL=debug\n```\n\n```bash\n$ print-env base.env dev.env\nLOG_LVL=debug API_TOKEN=aabbcc\n```\n\nAnother common case is when an external file is used to supply environment variables at _deploy-time_, for example, when used with the [serverless framework](https://github.com/serverless/serverless) with a `serverless.yml` that may look like:\n\n```yaml\nservice: env-vars\n\npackage:\n exclude:\n - node_modules/**\n - '*env.yml'\n - Pipefile\n - Pipfile.lock\n\nfunctions:\n test:\n # test.py - handler()\n handler: test.handler\n # sourcing env vars from ./env.yml\n environment: ${file(./env.yml):}\n```\n\nand for local test runs you can utilize `print-env` to reuse the same `env.yml`:\n\n```bash\n$ env $(print-env) python test.py # omitted file path since env.yml is on the default try-list\n```\n\nSimilarly, `print-env` can be used for _build-time_ configuration. For example, with an imaginary client-side project with a `package.json` that may look like:\n\n```json\n{\n \"name\": \"TestApp\",\n \"version\": \"1.0.1\",\n \"scripts\": {\n \"build\": \"env $(print-env local-env.json) parcel build index.html\",\n \"build:dev\": \"env $(print-env dev-env.json) parcel build index.html\",\n \"build:prod\": \"env $(print-env prod-env.json) parcel build index.html\"\n }\n}\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/woozyking/print-env", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "print-env", "package_url": "https://pypi.org/project/print-env/", "platform": "", "project_url": "https://pypi.org/project/print-env/", "project_urls": { "Homepage": "https://github.com/woozyking/print-env" }, "release_url": "https://pypi.org/project/print-env/2.0.0/", "requires_dist": [ "python-dotenv (>=0.8.2)", "pyyaml (>=3.12)", "click (>=6.7)" ], "requires_python": ">=3.5", "summary": "CLI to print environment variables from supported files.", "version": "2.0.0" }, "last_serial": 5631135, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "cea69b50c45e890beefc5a1ef5152c53", "sha256": "05c95d841bcd405d5e9666be98e22fdc51952b4a41102e574e34984a26e97432" }, "downloads": -1, "filename": "print_env-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "cea69b50c45e890beefc5a1ef5152c53", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3583, "upload_time": "2018-05-24T05:22:05", "url": "https://files.pythonhosted.org/packages/83/5e/66c64cf5d0eb04d5c86e06cbaae32a19dc7bca64a3b89c328f1ee7c06b88/print_env-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7cdf50dc87b9f7132d509189d777f1bb", "sha256": "5e4379927a6a9d1a2b96abea25d25d3790036af545666c39272615b97f132fc4" }, "downloads": -1, "filename": "print-env-0.1.0.tar.gz", "has_sig": false, "md5_digest": "7cdf50dc87b9f7132d509189d777f1bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3529, "upload_time": "2018-05-24T05:22:06", "url": "https://files.pythonhosted.org/packages/5a/94/7d216736aef6724899bfd3efb56e732df22325f2cc6e22bab9a43a1a362d/print-env-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "d470b052d784f3c6e4bfdaa8a47f37e6", "sha256": "bc2555bc265e063460958b6ef6d37ec7854afa99007f4b0ca49e735e844a541b" }, "downloads": -1, "filename": "print_env-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d470b052d784f3c6e4bfdaa8a47f37e6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3579, "upload_time": "2018-05-24T05:27:26", "url": "https://files.pythonhosted.org/packages/18/b1/3622272bb6427afd02017c6f7fdb2f89cc8d1cc6e2b41323aef7d337b144/print_env-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ada3059fda816f12c543a056664f891a", "sha256": "7382f05e94ac6059ae60911726a7f1338ad7035397eba55126453e92d9e52263" }, "downloads": -1, "filename": "print-env-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ada3059fda816f12c543a056664f891a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3529, "upload_time": "2018-05-24T05:27:28", "url": "https://files.pythonhosted.org/packages/db/dc/7ff755c18635f1e32dd301c4b511b6f37eda1088a70300d131746e97ad0c/print-env-0.1.1.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "d39898169b6fcd626c0598efdc474cca", "sha256": "cd34bf664d37dc557bf13c03d1775c3fcd9fc70083dc1cd8f2c9fe4426bbc24e" }, "downloads": -1, "filename": "print_env-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "d39898169b6fcd626c0598efdc474cca", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3791, "upload_time": "2018-05-26T05:22:21", "url": "https://files.pythonhosted.org/packages/21/0b/4255934a7dcfc899c5e342e552098c0cdb8995da58f93e2cfa49732d7cb4/print_env-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b8efc9900b9c1d3d39346e03a7ac10eb", "sha256": "7ebd4cf8acb898beaef6e0e7a9c42ae5b9f1d9e821dae1023281153adf0a470b" }, "downloads": -1, "filename": "print-env-0.1.3.tar.gz", "has_sig": false, "md5_digest": "b8efc9900b9c1d3d39346e03a7ac10eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3686, "upload_time": "2018-05-26T05:22:22", "url": "https://files.pythonhosted.org/packages/f2/2d/f588fa7ba8e343ca168fbd41ffbd223f58e7017948a44e8d1fb79141e66b/print-env-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "ff8e533be3a57b59997fea8d5487bfbc", "sha256": "1d0463101221a9386c7d1aac55ab7f5c7e6e0235f811ecdd2adaac786c0be497" }, "downloads": -1, "filename": "print_env-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ff8e533be3a57b59997fea8d5487bfbc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5465, "upload_time": "2018-05-27T05:19:25", "url": "https://files.pythonhosted.org/packages/83/0b/d0173fc29312d4e16b17c30745824653abcae8032f9897ddd6d92423b1be/print_env-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "88c800bdb66259be7614e8db24810a85", "sha256": "de10a9129fd7f0d1815fa817d3d73b62de60f2811966bce8865203a9d8ed04ec" }, "downloads": -1, "filename": "print-env-0.1.4.tar.gz", "has_sig": false, "md5_digest": "88c800bdb66259be7614e8db24810a85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4508, "upload_time": "2018-05-27T05:19:26", "url": "https://files.pythonhosted.org/packages/1d/16/1eb633ce926fcbf3c9306568a95dfd264f2647561b20dc035630d8785719/print-env-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "f7a55b7dd44282d2772f072d9423bd9b", "sha256": "dd1264c54019f929c5aa4adbf5c545f0ea493e62ac1c9d10bd02810fbb4a4204" }, "downloads": -1, "filename": "print_env-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "f7a55b7dd44282d2772f072d9423bd9b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5426, "upload_time": "2018-05-27T05:42:13", "url": "https://files.pythonhosted.org/packages/08/d1/392837fb4ea5692f6e5dc684482b012d74740438dfa4c5d11208e558ef37/print_env-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d989f94f5990086baceac5261865e20", "sha256": "8aee0bd1b5c8f7ef8902bca89c603e08c9481a822edd7146e1be9c250ecc8c9d" }, "downloads": -1, "filename": "print-env-0.1.5.tar.gz", "has_sig": false, "md5_digest": "3d989f94f5990086baceac5261865e20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4473, "upload_time": "2018-05-27T05:42:14", "url": "https://files.pythonhosted.org/packages/a0/e0/bd2a67d857f1bcc71518454cd7ea073a311d6745fee226ebc5b888b1497a/print-env-0.1.5.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "2e761880d39848827312ecac5f7cb508", "sha256": "c0703e94a22fb3bbf94d4c6efff4003c1c1ab96f29d59f4c2c5659a4ba573622" }, "downloads": -1, "filename": "print_env-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "2e761880d39848827312ecac5f7cb508", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6132, "upload_time": "2018-05-29T04:44:52", "url": "https://files.pythonhosted.org/packages/32/cd/7370aade1aa55472da442a5c426b25457cc0d8e53ff9d55bef7815b38e6d/print_env-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dd9e890a4bc65ba3347ce443e2060d3a", "sha256": "85cc3dbd60dcb8f46f0e05dcd1036edb0a28abc76c5a525c0a099acf8e7d201b" }, "downloads": -1, "filename": "print-env-0.2.0.tar.gz", "has_sig": false, "md5_digest": "dd9e890a4bc65ba3347ce443e2060d3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4959, "upload_time": "2018-05-29T04:44:53", "url": "https://files.pythonhosted.org/packages/45/7f/ced5fdc3aa97c27755a36286e76221ceda5de0b2503baef0a8930a98bda1/print-env-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "791c5fb4eba2edba5f1b6db273db4452", "sha256": "05aa59a4597da59c157407763584eabbf6c5c78c1c577d6c25ca8e0b2b4b23a9" }, "downloads": -1, "filename": "print_env-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "791c5fb4eba2edba5f1b6db273db4452", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6500, "upload_time": "2018-06-24T04:55:45", "url": "https://files.pythonhosted.org/packages/35/5e/f47fa80cbf0dbe5132382cb3895d9ac29d0aff7f5a32c95bbb544b465152/print_env-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a59269e3e09dcce2ad3b60d1ea002a07", "sha256": "45ed20ae5d8836bef0f37780e14870aa1eceaba0dcd4a4bf5c58e1da0fa0924d" }, "downloads": -1, "filename": "print-env-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a59269e3e09dcce2ad3b60d1ea002a07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5206, "upload_time": "2018-06-24T04:55:47", "url": "https://files.pythonhosted.org/packages/47/ef/26475b69b0c3cda565fba12918d466965caf28de9f07bc1ec874fcb565d1/print-env-0.3.0.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "43f2a263dd9597a1cae38e9b76e222be", "sha256": "1ff9d7d14167ab2bde6cd760bb8eb424a6f3c7a52682d62e34ad3cf796ff2870" }, "downloads": -1, "filename": "print_env-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "43f2a263dd9597a1cae38e9b76e222be", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7359, "upload_time": "2019-05-08T03:10:39", "url": "https://files.pythonhosted.org/packages/4f/82/1c013b17055ae76070687ab47c39f3382b6c29619782f5777a25adde781e/print_env-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7b54eaae9035b00da16ae6c8548247ee", "sha256": "acd184dbcfeaa2a52db8c3a6e49c4314ac392f82a053a9a80a57a0561e81a418" }, "downloads": -1, "filename": "print-env-1.0.0.tar.gz", "has_sig": false, "md5_digest": "7b54eaae9035b00da16ae6c8548247ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5248, "upload_time": "2019-05-08T03:10:41", "url": "https://files.pythonhosted.org/packages/43/f2/f6b8def901a9076ddf7ff9ea7a11463c5b5dee5cf3596071eddd0262446d/print-env-1.0.0.tar.gz" } ], "1.1.0b0": [ { "comment_text": "", "digests": { "md5": "3cee96698268b30f91393dedb6c5a38c", "sha256": "dafa99ca83420684d4e779bbbcc7dc0455405ef4cc180ad7526b675bfe6a56ae" }, "downloads": -1, "filename": "print_env-1.1.0b0-py3-none-any.whl", "has_sig": false, "md5_digest": "3cee96698268b30f91393dedb6c5a38c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7462, "upload_time": "2019-07-17T18:48:53", "url": "https://files.pythonhosted.org/packages/57/c9/d5e9d8d18aef2e3b118e4f82d3ec39f4e160ef6871f6874e879c03321cd7/print_env-1.1.0b0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce21cbca7f7fc38869c4d739dc53d0eb", "sha256": "3f838b524c13d91ecc17af62d323e6164242f33f9b353494e6975ada4fbaf131" }, "downloads": -1, "filename": "print-env-1.1.0b0.tar.gz", "has_sig": false, "md5_digest": "ce21cbca7f7fc38869c4d739dc53d0eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5340, "upload_time": "2019-07-17T18:48:55", "url": "https://files.pythonhosted.org/packages/4e/90/85db4296d051a17315db451e2b3bf1183a51fd14c11b38caa8d0da11e811/print-env-1.1.0b0.tar.gz" } ], "1.1.0b1": [ { "comment_text": "", "digests": { "md5": "e113658f41467627ab26c983b19fc494", "sha256": "632fb42531ad9f95a66b9c9294fea89dcbc91a737e30a3ff6fc446310b5c8e77" }, "downloads": -1, "filename": "print_env-1.1.0b1-py3-none-any.whl", "has_sig": false, "md5_digest": "e113658f41467627ab26c983b19fc494", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7474, "upload_time": "2019-08-01T18:54:09", "url": "https://files.pythonhosted.org/packages/d1/95/2df1be890c40b9fc49395f5e0de8e8000c3850179c61c6e37fc39146e46b/print_env-1.1.0b1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "66c029e9bf5cb6a3d0407eb076ae0740", "sha256": "06269c4f2078bdf88019629770d94409989172ecffd1d13de2174a89852555e0" }, "downloads": -1, "filename": "print-env-1.1.0b1.tar.gz", "has_sig": false, "md5_digest": "66c029e9bf5cb6a3d0407eb076ae0740", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5359, "upload_time": "2019-08-01T18:54:11", "url": "https://files.pythonhosted.org/packages/65/b7/c8afd5a9090c1bc21a4f98ea8389403724dd95db46c6e7f50fab98dfff45/print-env-1.1.0b1.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "41b0d5ecb2392122f76c28a26089c5d7", "sha256": "2bb1ab43026c799baeae564c8381675aaa3506735fb350faff4330c414b2578c" }, "downloads": -1, "filename": "print_env-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "41b0d5ecb2392122f76c28a26089c5d7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 7451, "upload_time": "2019-08-04T17:36:29", "url": "https://files.pythonhosted.org/packages/86/a4/36908a07a50c983f8d09dcc83bdf4c9e1d4a3035d0f3818bf9e05739cac5/print_env-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1b424cdd22f928afaf15377e23d3953a", "sha256": "a9bab452bf8d796f121731caf283e83309e1b2e8e12d2dcf6930dfc3d0bbfac2" }, "downloads": -1, "filename": "print-env-2.0.0.tar.gz", "has_sig": false, "md5_digest": "1b424cdd22f928afaf15377e23d3953a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 5368, "upload_time": "2019-08-04T17:36:30", "url": "https://files.pythonhosted.org/packages/86/c1/d4d237b621388d3dea809e8afb9365e5f91e36c37b044dc03866ac95fa52/print-env-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "41b0d5ecb2392122f76c28a26089c5d7", "sha256": "2bb1ab43026c799baeae564c8381675aaa3506735fb350faff4330c414b2578c" }, "downloads": -1, "filename": "print_env-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "41b0d5ecb2392122f76c28a26089c5d7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 7451, "upload_time": "2019-08-04T17:36:29", "url": "https://files.pythonhosted.org/packages/86/a4/36908a07a50c983f8d09dcc83bdf4c9e1d4a3035d0f3818bf9e05739cac5/print_env-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1b424cdd22f928afaf15377e23d3953a", "sha256": "a9bab452bf8d796f121731caf283e83309e1b2e8e12d2dcf6930dfc3d0bbfac2" }, "downloads": -1, "filename": "print-env-2.0.0.tar.gz", "has_sig": false, "md5_digest": "1b424cdd22f928afaf15377e23d3953a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 5368, "upload_time": "2019-08-04T17:36:30", "url": "https://files.pythonhosted.org/packages/86/c1/d4d237b621388d3dea809e8afb9365e5f91e36c37b044dc03866ac95fa52/print-env-2.0.0.tar.gz" } ] }