docs: update deployment docs for CI timeouts, build info, and prod safety
- hetzner-server-setup: runner timeout 3h, shutdown_timeout 300s, deploy.sh now writes .build-info and uses explicit -f flag - gitea: document unit-only CI tests and xdist incompatibility - docker: add build info section, document volume mount approach Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -252,9 +252,13 @@ The `scripts/deploy.sh` script handles the full deploy lifecycle:
|
||||
1. Stash local changes (preserves `.env` and other server-side edits)
|
||||
2. Pull latest code (`--ff-only`)
|
||||
3. Pop stash to restore local changes
|
||||
4. Rebuild and restart Docker containers (`docker compose --profile full up -d --build`)
|
||||
5. Run database migrations (`alembic upgrade heads`)
|
||||
6. Health check `http://localhost:8001/health` with retries
|
||||
4. Write `.build-info` (commit SHA + deploy timestamp)
|
||||
5. Rebuild and restart Docker containers (`docker compose -f docker-compose.yml --profile full up -d --build`)
|
||||
6. Run database migrations (`alembic upgrade heads`)
|
||||
7. Health check `http://localhost:8001/health` with retries
|
||||
|
||||
!!! note "CI test configuration"
|
||||
Only unit tests run in CI (`-m "unit"` with `timeout-minutes: 150`). Integration tests are run locally via `make test`. The CAX11 runner (2 vCPU ARM, 4GB) takes ~2.5h for 2,484 unit tests. `pytest-xdist` parallel execution is not compatible with the shared database session test fixtures.
|
||||
|
||||
See [Hetzner Server Setup — Step 16](hetzner-server-setup.md#step-16-continuous-deployment) for the full setup guide including SSH key generation and Gitea secrets configuration.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user