Stop pretending Vercel is an option
It was never used. The repository lives on a self-hosted Gitea, which Vercel's git integration cannot connect to at all — so the documented route amounted to "mirror to GitHub first", and nobody did. vercel.json is gone, and with it the branch in next.config.ts that switched off `output: "standalone"` when the VERCEL variable was present. That branch was the only functional trace; everything else was documentation and comments describing a second deployment path that did not exist. DEPLOYMENT.md loses its "two supported ways" framing and the whole Vercel section — about fifty lines. Several statements next to it were stale for a different reason and are corrected in the same pass: the outbound-firewall table still listed Supabase's pooler (the database is a container now, nothing leaves the server), the prerequisites still demanded an existing Supabase project, and the .env table still asked for a pooler connection string instead of the two new passwords. The nightly job is described as what it is — a container in docker-compose.yml — rather than as a replacement for Vercel Cron. Migrations keep their references: two comments from July mention Vercel Cron, and they describe what was true when they were written. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
14
README.md
14
README.md
@@ -110,12 +110,8 @@ selbst spricht. Ein Docker-Abbild ist damit umgebungsneutral: einmal gebaut,
|
||||
`/api/cron/apply-pending-changes` wendet wirksam gewordene, zukunftsdatierte
|
||||
Änderungen an (`pending_org_changes` → `apply_due_pending_changes()`).
|
||||
|
||||
- **Auf Vercel:** `vercel.json` definiert den täglichen Schedule; Vercel Cron
|
||||
sendet `Authorization: Bearer <CRON_SECRET>` automatisch, wenn
|
||||
`CRON_SECRET` in den Projekt-Env-Vars gesetzt ist.
|
||||
- **Außerhalb von Vercel (Docker):** kein Vercel Cron verfügbar — siehe
|
||||
[`DEPLOYMENT.md`](DEPLOYMENT.md) für den Cron-Sidecar-Container, der
|
||||
denselben Endpoint mit demselben Schema aufruft.
|
||||
- Den Zeitplan hält der `cron`-Container aus `docker-compose.yml`: täglich
|
||||
03:00 Uhr, mit `Authorization: Bearer <CRON_SECRET>`.
|
||||
- Fehlt `CRON_SECRET` oder stimmt der Header nicht, antwortet die Route mit
|
||||
`401` (nicht `500` — bewusst, siehe `tests/unit/security.test.ts`).
|
||||
|
||||
@@ -140,10 +136,8 @@ selbst spricht. Ein Docker-Abbild ist damit umgebungsneutral: einmal gebaut,
|
||||
|
||||
## Deployment
|
||||
|
||||
Siehe [`DEPLOYMENT.md`](DEPLOYMENT.md) für Docker-basiertes Deployment
|
||||
(Dockerfile, docker-compose.yml, Reverse-Proxy/TLS, Cron-Ersatz, Updates).
|
||||
Für Vercel: `vercel.json` ist bereits vorhanden; Env-Vars im
|
||||
Vercel-Projekt setzen (siehe oben).
|
||||
Siehe [`DEPLOYMENT.md`](DEPLOYMENT.md): Anwendung und Datenbank als Container,
|
||||
Reverse-Proxy/TLS, der nächtliche Lauf, Migrationen und Updates.
|
||||
|
||||
## Known TODOs vor Produktivbetrieb
|
||||
|
||||
|
||||
Reference in New Issue
Block a user