APP_HOST=0.0.0.0 APP_PORT=8084 DB_PATH=/data/app.db # Point at mock-truenas for dev, real TrueNAS for production TRUENAS_BASE_URL=http://mock-truenas:8000 TRUENAS_API_KEY=your-api-key-here TRUENAS_VERIFY_TLS=false POLL_INTERVAL_SECONDS=12 STALE_THRESHOLD_SECONDS=45 MAX_PARALLEL_BURNINS=2 # Stuck job detection — jobs running longer than this are marked unknown STUCK_JOB_HOURS=24 # Security — comma-separated IPs or CIDRs, empty = allow all # ALLOWED_IPS=10.0.0.0/24,127.0.0.1 LOG_LEVEL=INFO # SMTP — daily digest at SMTP_REPORT_HOUR, immediate alerts on fail/pass # Leave SMTP_HOST empty to disable all email. # SMTP_HOST=smtp.duocircle.com # SMTP_PORT=587 # SMTP_SSL_MODE=starttls # starttls (default) | ssl | plain # SMTP_TIMEOUT=60 # connection timeout in seconds # SMTP_USER=you@domain.com # SMTP_PASSWORD=yourpassword # SMTP_FROM=burnin@domain.com # SMTP_TO=brandon@domain.com # SMTP_REPORT_HOUR=8 # SMTP_DAILY_REPORT_ENABLED=true # set false to skip daily report without disabling alerts # SMTP_ALERT_ON_FAIL=true # SMTP_ALERT_ON_PASS=false # Webhook — POST JSON on burnin_passed / burnin_failed # Works with Slack, Discord, ntfy.sh, Gotify, n8n, Home Assistant, etc. # WEBHOOK_URL=https://ntfy.sh/your-topic