Skip to main content

Django app to create superuser from environment after migrations

Project description

django-createsuperuser

Django app that implements a signal to create super user from environment variables on migration. Useful for Docker, Kubernetes etc. If the user already exists it will do nothing.

Installation

Simply download from Pypi:

pip install django_superuser

Usage

This app needs to register in the INSTALLED_APPS list in your Django settings:

INSTALLED_APPS = [
    ...
    "createsuperuser",
    ...
]

As it is, it will do nothing. You need to define 4 environment variables through which the superuser will be created during the migration stage (uses the post_migrate signal).

Environment Variable Description
DJANGO_SUPERUSER_CREATE Enables the process of creating the superuser. Must be true or false (case insensitive)
DJANGO_SUPERUSER_USERNAME The username of the superuser account to create
DJANGO_SUPERUSER_EMAIL The email of the superuser account
DJANGO_SUPERUSER_PASSWORD The password of the superuser account

After defining these variables, the superuser will be created the next time you perform a migration (even if no migrations are applied)

export DJANGO_SUPERUSER_CREATE=true
export DJANGO_SUPERUSER_USERNAME=admin
export DJANGO_SUPERUSER_EMAIL=admin@example.com
export DJANGO_SUPERUSER_PASSWORD=admin
python manage.py migrate

You can use this to create the user when launching your django project in Docker by passing the variables in the command. Or if you are using Kuberenetes you can add them in a Secret and pass them in the pod via envFrom. Or however the environment variables fit in your workflow.

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-createsuperuser-signal-0.0.1.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file django-createsuperuser-signal-0.0.1.tar.gz.

File metadata

  • Download URL: django-createsuperuser-signal-0.0.1.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.10

File hashes

Hashes for django-createsuperuser-signal-0.0.1.tar.gz
Algorithm Hash digest
SHA256 3955ad4bb14452c0de634b82cf313d694467eb4e71e64bc401ca9cd5fa6e5b4d
MD5 76373581b27a9e722c7d1ff81b75b81c
BLAKE2b-256 9acb76cbdedb2483b4756a53c184b833fe3da302ff65f825e6a5ddb2ece51839

See more details on using hashes here.

File details

Details for the file django_createsuperuser_signal-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: django_createsuperuser_signal-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.10

File hashes

Hashes for django_createsuperuser_signal-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8d494df74c620021b3ff94833cae5ce8d54acc9ea080973a8879eb4918dededb
MD5 322cd3368a92c04ed7e9c0eca57877b6
BLAKE2b-256 873334d305d108ca2bf7b11df400ba7f610da61d5de651f5f49412bab13a0f98

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