{ "info": { "author": "Tristan Fisher", "author_email": "code@tristanfisher.com", "bugtrack_url": null, "classifiers": [ "Environment :: MacOS X", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: MacOS", "Operating System :: Unix", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Topic :: Utilities" ], "description": "chainload\n=========\n\nLoad a value from an environmental variable, YAML/JSON file, or default to a provided value.\n\n\n|TravisBadge|_\n\n.. |TravisBadge| image:: https://travis-ci.org/tristanfisher/chainload.svg?branch=master\n.. _TravisBadge: https://travis-ci.org/tristanfisher/chainload\n\n\nGetting chainload\n-----------------\n\nSimply:\n\n.. code-block:: bash\n\n pip install chainload\n\n\nInstall requirements\n--------------------\n\n.. code-block:: bash\n\n pip install -r requirements.txt\n\nor:\n\n.. code-block:: bash\n\n python setup.py install\n\n\nUsing chainload\n---------------\n\nIf you have variables that exist in a file, I recommend assigning a file object to a variable, then passing that variable to the chain loading method.\n\ne.g.\n\n.. code-block:: python\n\n $ python\n >>> from chainload import chainload\n >>> variable_file = chainload.load_file(file_name=\"tests/test_settings.yaml\")\n >>> chainload.chain_load_variable(\"environment\", \"environment\", \"debug\", variable_file)\n 'production'\n\nor, if you have a lot of variables to load, use the class-based approach:\n\n.. code-block:: python\n\n $ python\n >>> chainer = chainload.ChainloadSetup(filename=\"tests/test_settings.yaml\", environment_variable_prefix=\"webapp_\")\n >>> environment_value = chainer(\"environment\")\n\nthe latter has the advantage of being far more `DRY `_ for larger use-cases.\n\n\nSee the docstring for `chain_load_variable`, but this will load a variable in order of:\n\n\n1. A default value\n\n2. From file object\n\n3. From an environment variable. \n \n Optional: If the environmental variable is None, and the specified file option name exists in the env, and this behavior is enabled, an attempt to load from an environmental variable of the same name as specified for #2\n\n\nRunning tests\n-------------\n\nIf you want to run the tests for this package:\n\n.. code-block:: bash\n\n $ make test\n python setup.py test\n running nosetests\n running egg_info\n writing chainload.egg-info/PKG-INFO\n writing top-level names to chainload.egg-info/top_level.txt\n writing dependency_links to chainload.egg-info/dependency_links.txt\n reading manifest file 'chainload.egg-info/SOURCES.txt'\n writing manifest file 'chainload.egg-info/SOURCES.txt'\n .........\n ----------------------------------------------------------------------\n Ran 9 tests in 0.007s\n\n\nFiling bugs / issues\n--------------------\n\nWhen filing a bug report, please include a `Short, Self Contained, Correct (Compilable), Example `_.\n\n\nNew features / Pull requests\n----------------------------\n\nIf requesting a new feature, please include a well-explained use-case with example usage.\n\nWhen making a pull request, if new functionality is added, please include appropriate tests.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/tristanfisher/chainload", "keywords": "", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "chainload", "package_url": "https://pypi.org/project/chainload/", "platform": "", "project_url": "https://pypi.org/project/chainload/", "project_urls": { "Homepage": "http://github.com/tristanfisher/chainload" }, "release_url": "https://pypi.org/project/chainload/1.5/", "requires_dist": null, "requires_python": "", "summary": "Load a value from an environmental variable, YAML/JSON file, or default to a provided value.", "version": "1.5" }, "last_serial": 5624635, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "babecb7678599ec059d36588911e4da5", "sha256": "e369b9be178a3787a26244b131c64f118139cada838b23f3e772f8a282d57b4b" }, "downloads": -1, "filename": "chainload-1.0.tar.gz", "has_sig": false, "md5_digest": "babecb7678599ec059d36588911e4da5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3874, "upload_time": "2016-04-11T17:53:28", "url": "https://files.pythonhosted.org/packages/53/14/62e9d854422337cd50a577d9f9fc3587d093d4ec01f235727d70e7ede7ff/chainload-1.0.tar.gz" } ], "1.1": [], "1.2": [ { "comment_text": "", "digests": { "md5": "64acde09bbd7fe6e09529f66dc9c4f90", "sha256": "33e02b46879dfac6153e6c244be7b1d80d2056f07b33816002f16f0c5396ae63" }, "downloads": -1, "filename": "chainload-1.2.tar.gz", "has_sig": false, "md5_digest": "64acde09bbd7fe6e09529f66dc9c4f90", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3895, "upload_time": "2016-04-11T18:18:05", "url": "https://files.pythonhosted.org/packages/42/6d/4b43472a752e720ecded35109a8389cb92e90696e3c188ece7080324c6f1/chainload-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "febaa307f01e13f71291ed6da963956d", "sha256": "7e9a309a16bfae19f9454dcc17a65ca4601afa11327e4927d85deef71a1830ae" }, "downloads": -1, "filename": "chainload-1.3.tar.gz", "has_sig": false, "md5_digest": "febaa307f01e13f71291ed6da963956d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5331, "upload_time": "2016-04-13T22:41:11", "url": "https://files.pythonhosted.org/packages/fc/d4/6ad7d2291668781cac9e136fea643fa1d5a0a1e61250876adb91adb75106/chainload-1.3.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "39ef22f385ff2c2a06fbf501cae52c5a", "sha256": "f684618e9ed6705433e860b8dacb3f47553a87cab37f3c9aec8aa1a05b89134b" }, "downloads": -1, "filename": "chainload-1.4.tar.gz", "has_sig": false, "md5_digest": "39ef22f385ff2c2a06fbf501cae52c5a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5391, "upload_time": "2016-05-20T17:17:41", "url": "https://files.pythonhosted.org/packages/96/79/f29154d8c0c9d2a6a7fbd0875df9bb35a4b230f530e17827abf62917eaca/chainload-1.4.tar.gz" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "03e193420f0cc1b4116f4db7423604c9", "sha256": "41facd2cb281a76160dfa857172fcd29054d5be16e0acc59de6ddefeb75a4deb" }, "downloads": -1, "filename": "chainload-1.5.tar.gz", "has_sig": false, "md5_digest": "03e193420f0cc1b4116f4db7423604c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5259, "upload_time": "2019-08-02T14:56:00", "url": "https://files.pythonhosted.org/packages/38/24/d7dd40931282d77577d1d3545f121afbd82b48c0ce59cbc472c8ae54437a/chainload-1.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "03e193420f0cc1b4116f4db7423604c9", "sha256": "41facd2cb281a76160dfa857172fcd29054d5be16e0acc59de6ddefeb75a4deb" }, "downloads": -1, "filename": "chainload-1.5.tar.gz", "has_sig": false, "md5_digest": "03e193420f0cc1b4116f4db7423604c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5259, "upload_time": "2019-08-02T14:56:00", "url": "https://files.pythonhosted.org/packages/38/24/d7dd40931282d77577d1d3545f121afbd82b48c0ce59cbc472c8ae54437a/chainload-1.5.tar.gz" } ] }