Nix expressions to declaratively deploy django applications
Go to file
2024-07-04 13:50:15 +02:00
npins init 2024-06-09 15:20:20 +02:00
test_assets init 2024-06-09 15:20:20 +02:00
utils fix: bugfixs when mainModule != app name 2024-06-09 20:15:40 +02:00
.gitignore init 2024-06-09 15:20:20 +02:00
module.nix feat(manage commmand): Add manage command with nsenter 2024-07-04 13:50:15 +02:00
README.md fix: Update readme 2024-06-09 20:16:00 +02:00
test.nix feat(manage commmand): Add manage command with nsenter 2024-07-04 13:50:15 +02:00

Djangonix ❄️

Nix expression to declaratively deploy django applications.

How it works

The main issue for deploying declarative django applications is the pass secrets to the settings.

This opinionated module tackles this issue by building an ad-hox settings module that re-exports the settings.py from the app and overrides some settings using the loadcredential python module. The settings to be overriden are provided by the user through the module.

With this you should be able to deploy almost any django application without any modification of the settings.py file.

Exemple

TODO

Testing

nix-build test.nix

TODO

  • Hardening
  • Add a logic to change INSTALLED_APPS and MIDDLEWARE easily (the idea is to be able to remove developpement apps at no cost)
  • Add test case for runtimeSettings (it is probably broken for now)
  • Add test case for static assets
  • Remove all TODOs