summaryrefslogtreecommitdiff
path: root/internal/tmpl/rc.d.tmpl
AgeCommit message (Collapse)Author
2026-09-02Rate-limit the app process restart instead of hot-loopingHEADmasterClaude
daemon -r restarts immediately with no delay - a genuinely broken deploy (crashes on every start) would hot-loop as fast as the kernel can fork/exec, burning CPU and flooding syslog. -R 5 restarts with a 5s gap instead, matching both Heroku's dyno manager (backs off a repeatedly- crashing dyno rather than hammering it) and dvd.club's own pre-skiff rc.d script, which already used -R 5 before this template replaced it. Verified on the VM: killed the app process directly, confirmed it stayed down through the 1s and 4s marks and was back by 7s - not an immediate restart. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06Add skiff config set/unset/list, backed by /app/env in the app's datasetClaude
Config vars are plain env vars, injected into both the running app (via rc.d) and the release phase, and versioned on the same ZFS snapshot timeline as deploys - a bad config change gets the same automatic snapshot/restart/health-check/rollback guarantee a bad deploy already gets. Extracts deploy.go's health check into internal/health so both paths share it. Verified end-to-end against a FreeBSD VM: config set/unset, automatic rollback on a health-check failure, and explicit `skiff rollback` all correctly carry the env file along with the rest of the dataset.
2026-08-05Initial commit of skiff scaffoldingClaude