build: add Fly.io deployment process
CI / test (pull_request) Failing after 2m45s
CI / docker (pull_request) Has been skipped

fly.toml (Dockerfile.web, scale-to-zero in syd, /api/health checks),
make deploy / deploy-status targets, a Gitea workflow deploying on v*
tags or manual dispatch via FLY_API_TOKEN, and README instructions
covering first-time setup and the server's runtime env knobs.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Gary Hansen
2026-07-07 21:50:30 +10:00
co-authored by Claude Fable 5
parent 111b8bf48e
commit ccfd3fd156
4 changed files with 119 additions and 1 deletions
+27
View File
@@ -0,0 +1,27 @@
name: Deploy
# Deploys the web server to Fly.io.
# Triggers: pushing a version tag (v*), or manual dispatch.
# Requires the FLY_API_TOKEN repository secret (create with
# `flyctl tokens create deploy -x 999999h`).
on:
push:
tags: ["v*"]
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install flyctl
run: |
curl -L https://fly.io/install.sh | sh
echo "$HOME/.fly/bin" >> "$GITHUB_PATH"
- name: Deploy
run: flyctl deploy --remote-only
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}