{ "info": { "author": "Enrique Paz", "author_email": "quiquepaz@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Topic :: Internet :: WWW/HTTP" ], "description": "Django ETCD Settings\n=====================\n\n.. image:: https://secure.travis-ci.org/kpn-digital/django-etcd-settings.svg?branch=master\n :target: http://travis-ci.org/kpn-digital/django-etcd-settings?branch=master\n\n.. image:: https://img.shields.io/codecov/c/github/kpn-digital/django-etcd-settings/master.svg\n :target: http://codecov.io/github/kpn-digital/django-etcd-settings?branch=master\n\n.. image:: https://img.shields.io/pypi/v/django-etcd-settings.svg\n :target: https://pypi.python.org/pypi/django-etcd-settings\n\n.. image:: https://readthedocs.org/projects/django-etcd-settings/badge/?version=latest\n :target: http://django-etcd-settings.readthedocs.org/en/latest/?badge=latest\n\n\nFeatures\n--------\n\nThis application allows you to extend the Django settings as configured in the\n``settings.py`` file with:\n\n* Environment dependent values\n* Values in different config sets, identified by name, which can be selected on\n a 'per request' basis using the ``X-DYNAMIC-SETTINGS`` HTTP header\n\nBoth the added configuration values and config sets would live at ETCD, which\nwill be continuously monitored by this library in order to transparently update\nyour app settings upon changes.\n\n\nBackends\n--------\n\n- ETCD 2.2.1\n\n\nInstallation\n------------\n\n.. code-block:: bash\n\n $ pip install django-etcd-settings\n\n\nUsage\n-----\n\nThis Django application uses the following configuration keys:\n\n* ``DJES_ETCD_DETAILS``: a dict with 'host', 'port', 'protocol', 'prefix',\n 'long_polling_timeout' and 'long_polling_safety_delay' (both in seconds).\n 'prefix' is a string to be used as base path for all configuration\n managed by this app.\n i.e. '/config/api' will result in '/config/api/' and\n '/config/api/extensions/' to be used for environment defaults and\n config_sets respectively\n Timeouts default to 50 and 5 seconds respectively.\n If ``DJES_ETCD_SETTINGS`` is None, this app will start with no errors and\n etcd_settings.settings will resolve to django.conf.settings plus your\n DJES_DEV_PARAMS overwrites\n i.e.\n\n .. code-block:: python\n\n ETCD_DETAILS = dict(\n host='localhost', port=4000, protocol='http',\n long_polling_timout=50, long_polling_safety_delay=5\n )\n\n* ``DJES_DEV_PARAMS``: A module with local overwrites, generally used for\n development. The overwrites must be capitalized module attributes.\n These overwrites will have preference over development settings on ETCD,\n but not over configset overwrites indicated by the ``X-DYNAMIC-SETTINGS``\n HTTP header\n\n* ``DJES_ENV``: A string with the name of the environment in which the code is\n running. This will be used for accessing the env_defaults in\n ETCD in a directory with that name\n i.e. 'test', 'staging', 'prod'...\n\n* ``DJES_REQUEST_GETTER``: path to a function which accesses the HTTP request\n object being handled. Ensuring access to this value can be implemented\n with, for instance, middleware. This settings is only used to allow\n config overwrites on runtime based on predifined config_sets. In case you\n don't want to use this functionality, just set this setting to None\n i.e. 'middleware.thread_local.get_current_request'\n\n* ``DJES_WSGI_FILE``: path to the ``wsgi.py`` file for the django\n project. If not None, the monitoring of environment configuration will\n perform a ``touch`` of the file everytime the env_defaults are updated, so\n that all processes consuming settings from ``django.conf`` can consume the\n latest settings available as well\n The path can be absolute or relative to the 'manage.py' file.\n i.e. /project/src/wsgi.py, wsgi.py\n\nThen, add ``etcd_settings`` to the list of ``INSTALLED_APPS`` before any other that\nrequires dynamic settings.\n\nFrom your code, just do ``from etcd_settings import settings`` instead of ``from\ndjango.conf import settings``.\n\nIn case you want to use ``etcd_settings`` to modify some values in your standard\nDjango settings.py file (i.e. Database config), you can use the following\nsnippet in your settings file, as high as possible in the file and immediately\nunder the ``DJES_*`` settings definition:\n\n .. code-block:: python\n\n import etcd_settings.loader\n extra_settings = etcd_settings.loader.get_overwrites(\n DJES_ENV, DJES_DEV_PARAMS, DJES_ETCD_DETAILS)\n locals().update(extra_settings)", "description_content_type": null, "docs_url": "https://pythonhosted.org/django-etcd-settings/", "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/kpn-digital/django-etcd-settings", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "django-etcd-settings", "package_url": "https://pypi.org/project/django-etcd-settings/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-etcd-settings/", "project_urls": { "Homepage": "https://github.com/kpn-digital/django-etcd-settings" }, "release_url": "https://pypi.org/project/django-etcd-settings/0.1.15/", "requires_dist": null, "requires_python": "", "summary": "A dynamic settings management solution for Django using ETCD", "version": "0.1.15" }, "last_serial": 2810649, "releases": { "0.1.10": [ { "comment_text": "", "digests": { "md5": "929dad8056957734f6374f80c677af37", "sha256": "143a46720b6c9dd134bf2259a54f6bd61711e81a966133bc41f217d42073e221" }, "downloads": -1, "filename": "django-etcd-settings-0.1.10.tar.gz", "has_sig": false, "md5_digest": "929dad8056957734f6374f80c677af37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20272, "upload_time": "2016-04-12T18:12:16", "url": "https://files.pythonhosted.org/packages/fc/ca/735202f90f9afdfbb3495eb85c9726b413cd3112b45fe20d74e1580ff6ba/django-etcd-settings-0.1.10.tar.gz" } ], "0.1.11": [ { "comment_text": "", "digests": { "md5": "ef62da2b41c9375677b9d7619bc365f9", "sha256": "8d7b9ac1d55e5e7c6c5a4c15fcfcde9be7517fe007926df24f90093406aa9aad" }, "downloads": -1, "filename": "django-etcd-settings-0.1.11.tar.gz", "has_sig": false, "md5_digest": "ef62da2b41c9375677b9d7619bc365f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20411, "upload_time": "2016-08-19T09:41:06", "url": "https://files.pythonhosted.org/packages/66/dc/cee510b7741427cf606aeb02be2c83bc69e3edb0b23f5dc190ed537d563e/django-etcd-settings-0.1.11.tar.gz" } ], "0.1.12": [ { "comment_text": "", "digests": { "md5": "626581a76cb39cd6ed419c9aaedcadbf", "sha256": "a164295d888f913c5c2ab497837715629315307f10b68bf597aaff2b9956a9a2" }, "downloads": -1, "filename": "django-etcd-settings-0.1.12.tar.gz", "has_sig": false, "md5_digest": "626581a76cb39cd6ed419c9aaedcadbf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19473, "upload_time": "2016-12-27T09:21:12", "url": "https://files.pythonhosted.org/packages/0c/67/d6efff051c3a17fa0f437be59e7bc94e3206162293aac352d39fd2ce1a34/django-etcd-settings-0.1.12.tar.gz" } ], "0.1.13": [ { "comment_text": "", "digests": { "md5": "b7f3618c59068cc9dc2c973f8fe37532", "sha256": "0a08f0f6f920cfdffd22ee448903147f68544a3a0fe2f8b04c373715e8804cfd" }, "downloads": -1, "filename": "django-etcd-settings-0.1.13.tar.gz", "has_sig": false, "md5_digest": "b7f3618c59068cc9dc2c973f8fe37532", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19471, "upload_time": "2017-01-02T15:10:59", "url": "https://files.pythonhosted.org/packages/77/4b/11569001ef81ae0c02eee1ec4e7eb66926cd37ae2a67210aa4a208f862ba/django-etcd-settings-0.1.13.tar.gz" } ], "0.1.14": [ { "comment_text": "", "digests": { "md5": "265635c83fb25d38d24039ccf5385241", "sha256": "87c352d64e2de5cf6455fb8e0e5fd78235caa40b723c5cee006a5a2ace00e1f4" }, "downloads": -1, "filename": "django-etcd-settings-0.1.14.tar.gz", "has_sig": false, "md5_digest": "265635c83fb25d38d24039ccf5385241", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19438, "upload_time": "2017-01-31T08:37:15", "url": "https://files.pythonhosted.org/packages/ca/1d/a4853de07d589c678a2ea698db12d8ee0572a637c04bef1b7f7ef23fbed1/django-etcd-settings-0.1.14.tar.gz" } ], "0.1.15": [ { "comment_text": "", "digests": { "md5": "8348c4ac7c80d214a493062f0360ff2d", "sha256": "d16fec1d0866736158a86713d73ca43a503a747675931408708376040e1cf999" }, "downloads": -1, "filename": "django-etcd-settings-0.1.15.tar.gz", "has_sig": false, "md5_digest": "8348c4ac7c80d214a493062f0360ff2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19452, "upload_time": "2017-04-18T08:54:09", "url": "https://files.pythonhosted.org/packages/ac/14/bfabcdda65341c983213d284758d89ddade1cd5950b895ccf9ab5b073636/django-etcd-settings-0.1.15.tar.gz" } ], "0.1.4": [], "0.1.5": [ { "comment_text": "", "digests": { "md5": "0fdd4152406dc3b5e0e745e3d65e3393", "sha256": "59c7313d32a5ab307666a373ab6e2012fadef5db49e1e600d1fb497eac06aba5" }, "downloads": -1, "filename": "django-etcd-settings-0.1.5.tar.gz", "has_sig": false, "md5_digest": "0fdd4152406dc3b5e0e745e3d65e3393", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19897, "upload_time": "2016-01-04T13:05:29", "url": "https://files.pythonhosted.org/packages/42/21/d58c3b1d308f4ab8f6f9ed73610b92bceba02bd484c2d584355445c90d0d/django-etcd-settings-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "20d6f183d19ae6947ed3ab98e41df734", "sha256": "41f1d0f67a9aacd37b364c2c6b27e65902b4ca8925b68bcb0faa955ed394ac6b" }, "downloads": -1, "filename": "django-etcd-settings-0.1.6.tar.gz", "has_sig": false, "md5_digest": "20d6f183d19ae6947ed3ab98e41df734", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19995, "upload_time": "2016-01-13T16:51:46", "url": "https://files.pythonhosted.org/packages/10/87/afa5ee0814b73941cc29f1357e3ab3d403312c312fc07ae617af4391db58/django-etcd-settings-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "8654e9c6d8949555ff399066232a4e21", "sha256": "99d053b58b2d6bf2076865feb50252af1b6f16555030ff48db8e02f2195be9f3" }, "downloads": -1, "filename": "django-etcd-settings-0.1.7.tar.gz", "has_sig": false, "md5_digest": "8654e9c6d8949555ff399066232a4e21", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19998, "upload_time": "2016-02-15T13:50:42", "url": "https://files.pythonhosted.org/packages/b3/59/9342e210af16f1bc105434306770938fb8bf152e8e4f34b482487208cc31/django-etcd-settings-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "f2697562893cea5fd7d83a791dfd0d02", "sha256": "f4acefdd6d457f8b9135fb92924b63760177ca77a01145466b35fe3d432561f0" }, "downloads": -1, "filename": "django-etcd-settings-0.1.8.tar.gz", "has_sig": false, "md5_digest": "f2697562893cea5fd7d83a791dfd0d02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20007, "upload_time": "2016-02-16T10:44:40", "url": "https://files.pythonhosted.org/packages/70/d9/4cbaa329dede1977908f39583af459e812d759cdd3d1c255a77f0ae196c9/django-etcd-settings-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "3dfbfba52ea85f009fbc97b556630cfd", "sha256": "aec652c951db320773d8802d69525c058ccda606c8a82ce70b42c7e0cbdfee1d" }, "downloads": -1, "filename": "django-etcd-settings-0.1.9.tar.gz", "has_sig": false, "md5_digest": "3dfbfba52ea85f009fbc97b556630cfd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20264, "upload_time": "2016-02-17T14:52:35", "url": "https://files.pythonhosted.org/packages/a2/fa/e5d1b3541698063a85d8cf1af5690bf956769e4ada08eda5285a17cc7586/django-etcd-settings-0.1.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8348c4ac7c80d214a493062f0360ff2d", "sha256": "d16fec1d0866736158a86713d73ca43a503a747675931408708376040e1cf999" }, "downloads": -1, "filename": "django-etcd-settings-0.1.15.tar.gz", "has_sig": false, "md5_digest": "8348c4ac7c80d214a493062f0360ff2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19452, "upload_time": "2017-04-18T08:54:09", "url": "https://files.pythonhosted.org/packages/ac/14/bfabcdda65341c983213d284758d89ddade1cd5950b895ccf9ab5b073636/django-etcd-settings-0.1.15.tar.gz" } ] }