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.

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.

Source Distribution

django_configdir-0.1.9.tar.gz (6.4 kB view details)

Uploaded Source

File details

Details for the file django_configdir-0.1.9.tar.gz.

File metadata

File hashes

Hashes for django_configdir-0.1.9.tar.gz
Algorithm Hash digest
SHA256 53ef2782268dbd11b174fe763816a723579b9d764546a1891517a90dc5f71d61
MD5 3fb58326fd3634d17065ba9103a44d18
BLAKE2b-256 f9e5a72f47b2f91694beb795ab69d05027d9c82b1e83b464be2ccbab5e82d5da

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page