{ "info": { "author": "mracter", "author_email": "mary@praekelt.org", "bugtrack_url": null, "classifiers": [], "description": "django-vaultkeeper-adaptor\n==========================\n\n.. image:: https://img.shields.io/travis/praekeltfoundation/django-vaultkeeper-adaptor/master.svg?style=flat-square\n :target: https://travis-ci.org/praekeltfoundation/vaultkeeper\n\n.. image:: https://img.shields.io/codecov/c/github/praekeltfoundation/django-vaultkeeper-adaptor/master.svg?style=flat-square\n :target: https://codecov.io/github/praekeltfoundation/vaultkeeper?branch=develop\n\n|\n| A small library that allows Django applications to consume `vaultkeeper `_ output as resource secrets.\n| \n| ``django-vaultkeeper-adaptor`` supports the ``SET_ROLE`` operation `necessary to revoke dynamically-generated PostgreSQL credentials `_.\n\nInstalling the Package\n----------------------\n\n| Clone this project and install the package from source with the following commands in the root directory of the repository:\n\n| ``$ pip install -e .``\n| \n| Install the package for development with the following command:\n| \n| ``$ pip install -e .[test]``\n\nPrerequisites\n-------------\n\n| Technically, you do not need to launch your application with ``vaultkeeper`` to use this library, as it is simply an input adaptor. However, using your app with ``vaultkeeper`` is strongly recommended.\n| \n| It is assumed that the rest of your Vault workflow is already configured and running. If you are using the PostgreSQL secret backend with Django, it is necessary to use ``django-postgresql-setrole`` in your application as well.\n\nHow to Use\n----------\n\n| Ensure that ``django-vaultkeeper-adaptor`` is installed in your production environment.\n| \n| Ensure that your Django application knows where the file containing your secrets will be. In your ``settings.py``, replace your existing way of populating ``DATABASES`` and ``BROKER_URL`` with the following code:\n\n\n.. code-block:: Python\n\n cfg = environ.get('CREDENTIAL_PATH','')\n \n if cfg != '':\n vk_adaptor = vaultkeeper_adaptor.VKAdaptor(\n config_path=cfg,\n DATABASES=DATABASES,\n BROKER_URL=BROKER_URL,\n )\n vk_adaptor.process_all()\n\n|\n| ``django-vaultkeeper-adaptor`` will read the ``vaultkeeper``-generated file containing application credentials and populate the supplied settings variables with values from the file, if they exist.\n|\n| Note that ``CREDENTIAL_PATH`` in the above example is an environment variable set with the output location of ``vaultkeeper`` secrets. You can supply your application with this value in a different manner if you wish.", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/praekeltfoundation/vaultkeeper", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "vaultkeeper-adaptor", "package_url": "https://pypi.org/project/vaultkeeper-adaptor/", "platform": "", "project_url": "https://pypi.org/project/vaultkeeper-adaptor/", "project_urls": { "Homepage": "https://github.com/praekeltfoundation/vaultkeeper" }, "release_url": "https://pypi.org/project/vaultkeeper-adaptor/0.0.1/", "requires_dist": null, "requires_python": "", "summary": "A small library that allows Django apps to consume Vaultkeeper output as resource secrets.", "version": "0.0.1" }, "last_serial": 3184806, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "d500af410e914dd9af86bd53694e6f61", "sha256": "0e691d66285da77e2cca6c9c335a7d0401d9ad812e72253c74f34e4cd2e67152" }, "downloads": -1, "filename": "vaultkeeper_adaptor-0.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "d500af410e914dd9af86bd53694e6f61", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 6267, "upload_time": "2017-09-19T08:47:30", "url": "https://files.pythonhosted.org/packages/34/c9/ed3cd109a252666539ce756ffe162776e957c598dcb7560236349f74aeec/vaultkeeper_adaptor-0.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "242fb3af7c8866301005c4141a9634be", "sha256": "806b8e095dd6e21f1056ccb26f4d6b5bb13cea7e056c809079662849eb6efee4" }, "downloads": -1, "filename": "vaultkeeper_adaptor-0.0.1.tar.gz", "has_sig": false, "md5_digest": "242fb3af7c8866301005c4141a9634be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3403, "upload_time": "2017-09-18T15:09:47", "url": "https://files.pythonhosted.org/packages/87/76/f3ad8499f4d7792b45fa4108096fa62f393e3fa984a085fcdbdc62bc3584/vaultkeeper_adaptor-0.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d500af410e914dd9af86bd53694e6f61", "sha256": "0e691d66285da77e2cca6c9c335a7d0401d9ad812e72253c74f34e4cd2e67152" }, "downloads": -1, "filename": "vaultkeeper_adaptor-0.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "d500af410e914dd9af86bd53694e6f61", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 6267, "upload_time": "2017-09-19T08:47:30", "url": "https://files.pythonhosted.org/packages/34/c9/ed3cd109a252666539ce756ffe162776e957c598dcb7560236349f74aeec/vaultkeeper_adaptor-0.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "242fb3af7c8866301005c4141a9634be", "sha256": "806b8e095dd6e21f1056ccb26f4d6b5bb13cea7e056c809079662849eb6efee4" }, "downloads": -1, "filename": "vaultkeeper_adaptor-0.0.1.tar.gz", "has_sig": false, "md5_digest": "242fb3af7c8866301005c4141a9634be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3403, "upload_time": "2017-09-18T15:09:47", "url": "https://files.pythonhosted.org/packages/87/76/f3ad8499f4d7792b45fa4108096fa62f393e3fa984a085fcdbdc62bc3584/vaultkeeper_adaptor-0.0.1.tar.gz" } ] }