Metadata-Version: 2.1
Name: django-heroku
Version: 0.3.1
Summary: This is a Django library for Heroku apps.
Home-page: https://github.com/heroku/django-heroku
Author: Kenneth Reitz
Author-email: kreitz@salesforce.com
License: MIT
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy


Django-Heroku (Python Library)
==============================

.. image:: https://travis-ci.org/heroku/django-heroku.svg?branch=master
    :target: https://travis-ci.org/heroku/django-heroku

This is a Django library for Heroku applications that ensures a seamless deployment and development experience.

This library provides:

-  Settings configuration (Static files / WhiteNoise).
-  Logging configuration.
-  Test runner (important for `Heroku CI <https://www.heroku.com/continuous-integration>`_).

--------------

Django 2.0 is targeted, but older versions of Django should be compatible. Only Python 3 is supported.

Usage of Django-Heroku
----------------------

In ``settings.py``, at the very bottom::

    …
    # Configure Django App for Heroku.
    import django_heroku
    django_heroku.settings(locals())

This will automatically configure ``DATABASE_URL``, ``ALLOWED_HOSTS``, WhiteNoise (for static assets), Logging, and Heroku CI for your application.

**Bonus points!** If you set the ``SECRET_KEY`` environment variable, it will automatically be used in your Django settings, too!

Disabling Functionality
///////////////////////

``settings()`` also accepts keyword arguments that can be passed ``False`` as a value, which will disable automatic configuration for their specific areas of responsibility:

- ``databases``
- ``test_runner``
- ``staticfiles``
- ``allowed_hosts``
- ``logging``
- ``secret_key``

-----------------------

You can also just use this library to provide a test runner for your Django application, for use on Heroku CI::

    import django_heroku
    TEST_RUNNER = 'django_heroku.HerokuDiscoverRunner'

✨🍰✨
