Skip to main content

A utility to create per-user, per-host configuration files for Django.

Project description

A tool for helping with override Django configs.

django_confighelper on its own creates a config for the current django instance based on the current hostname, the current name of the effective uid and the current directory in which the django instance is sitting:

config/hostname/euidname__dirname.py

If the config already exists django_confighelper exits with a warning.

The ‘edit’ subcommand attempts to start a system editor on the config. It first tries the environment variable $EDITOR and then switches to “editor” from the execution path.

The ‘print’ subcommand prints the filename of the config file. This is so you can script further interactions, for example:

echo “CONFIG_SPECIAL=True” >> $(django_confighelper print)

The ‘default’ subcommand looks for a default config file in config/defaults/$user.py and if it exists, it creates a config using the values contained there in. It opens the newly created file just in case you need to change some values - like FRONTEND_PORT e.t.c

The ‘printval’ subcommand prints the value of a DJANGO config setting after the config has been applied. For example:

django_confighelper printval DATABASE_HOST

prints out the setting of the database host.

The ‘updatesettings’ subcommand appends the contents of configdir/templates.py to the end of the settings.py in the current directory. This is required to be run once (and once only), and simply adds some import statements to handle the additional import of per-instance settings files.

The ‘cat’ subcommands outputs the contents of the instance specific config file (i.e. config/hostname/euidname__dirname.py)

The ‘dir’ subcommand outputs the evaluated values of all settings managed by django_confighelper.

confignginx is also included. This is a management command you can use to generate Nginx configs from your Django app.

./manage.py confignginx –port=8100 –domain=www.example.com

will generare an nginx config that will proxy requests to the port but send all static data to the STATIC_ROOT via the STATIC_URL.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django_configdir-0.1.10.tar.gz (6.5 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page