djangoplay-cli / API / Configuration Contract
DocsDjangoPlay CLIAPIConfiguration Contract

Configuration Contract

The CLI reads its primary configuration from:

1 min readApplies to v1.0.6
On this page ▾
  1. Configuration consumed by the CLI
  2. site
  3. django.settings_module
  4. subdomains
  5. Secrets file
text
~/.dplay/config.yaml

Secrets are optionally loaded from:

text
~/.dplay/.secrets

Configuration consumed by the CLI

The current implementation reads the following keys.

yaml
site:
  host: localhost
  http_port: 8000
  http_protocol: http
  http_url: http://localhost:8000
  ssl_port: 8443
  ssl_protocol: https
  ssl_url: https://localhost:8443

django:
  settings_module: paystream.settings

subdomains:
  - issues.localhost
  - docs.localhost

The exact values are application-specific.

site

Used by HTTP/HTTPS startup to derive:

  • host
  • port
  • protocol
  • browser URL

django.settings_module

Used to construct the environment passed to Celery subprocesses.

subdomains

The current SSL implementation iterates this value and creates explicit SAN entries as <subdomain>.<host>.

Do not assume a nested subdomains.extra_domains structure unless the host application's configuration loader normalizes it before the CLI sees it.

Secrets file

.secrets is parsed as simple KEY=VALUE lines.

Comments and blank lines are ignored.

Example:

text
DATABASE_PASSWORD=...
API_KEY=...

Values are placed into the current process environment.

Do not commit this file.