intent/fly.toml
Alec Perkins 950a4030ee Scaffold Phase 0: Django project, deploy config, base layout
Django 5.2 with dev/test/prod settings, SQLite tuned for Litestream
(WAL, IMMEDIATE transactions), ULID primary keys via a shared base
model, and a custom User model ahead of the first migration.

Minimal accessible base template with dark mode via color-scheme and
an optional theme picker. /healthz answers before host validation so
Fly checks pass.

Dockerfile (dev and prod targets), compose for local dev, fly.toml
with placeholder app/region, Litestream backups to B2, and a Forgejo
Actions workflow. Migrations run in bin/start because Fly release
machines don't mount volumes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 06:59:34 -04:00

34 lines
761 B
TOML

# App name and region are placeholders until the Fly app is created.
app = "intent-CHANGEME"
primary_region = "CHANGEME"
[build]
build-target = "prod"
[env]
DJANGO_SETTINGS_MODULE = "config.settings.prod"
DJANGO_ALLOWED_HOSTS = "intent-CHANGEME.fly.dev"
INTENT_DATA_DIR = "/data"
# One machine, one volume: SQLite lives here and Litestream replicates it to B2.
[mounts]
source = "intent_data"
destination = "/data"
[http_service]
internal_port = 8000
force_https = true
auto_stop_machines = "stop"
auto_start_machines = true
min_machines_running = 0
[[http_service.checks]]
method = "GET"
path = "/healthz"
interval = "30s"
timeout = "5s"
grace_period = "20s"
[[vm]]
size = "shared-cpu-1x"
memory = "512mb"