# Bonfire ground zero + gitbot (2026-07-09) ## Stack | Item | Value | |------|--------| | Path | `/home/hernani/koopa-bonfire/` | | Containers | `koopa-bonfire`, `koopa-bonfire-db` | | Port | **9021** → Caddy `bonfire.hacktivism.ch` | | Image | `bonfirenetworks/bonfire:1.0.5-social-amd64` | | Env | secrets **64** chars; `DB_MIGRATE_INDEXES_CONCURRENTLY=false` | Ground zero: wiped volume + dir, clean migrate (import_me `20200828094944` applied, ~109 migrations, identity tables present). ## Accounts | Login | Role | |-------|------| | `foss` / `foss@bonfire.hacktivism.ch` | operator account | | character `gitbot` | same account (multi-profile) | Passwords: `/home/hernani/koopa-bonfire/users.env` (mode 600). Public: https://bonfire.hacktivism.ch/ ## Gitbot (commit mirror) - Live: `~/koopa-bonfire/bin/gitbot-mirror.py` - Mirror in repo: `scripts/bonfire/gitbot-mirror.py` - State: `~/koopa-bonfire/gitbot-state.json` - Poll Forgejo every **300s** (`gitbot-mirror.service`); log `~/koopa-bonfire/gitbot.log` - No webhook — API only ```bash systemctl --user status gitbot-mirror.service tail -20 ~/koopa-bonfire/gitbot.log python3 ~/koopa-bonfire/bin/gitbot-mirror.py ``` More: `2026/2026-07-11--bonfire-gitbot-systemd.md`. ## Lessons - First boot needs **≥64-byte** `SECRET_KEY_BASE`. - Migrations: **`DB_MIGRATE_INDEXES_CONCURRENTLY=false`** on empty DB (avoids concurrent index in txn). - Partial DB → wipe volume and ground zero rather than patch half-migrated state.