Stop pretending Vercel is an option
Some checks failed
CI / Lint, Typen, Tests, Build (push) Failing after 5m51s
CI / Integrationstests (echtes Postgres) (push) Failing after 5m15s

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:
2026-08-21 11:02:40 +02:00
parent 77d9a95f7f
commit e958bb5c6b
12 changed files with 54 additions and 127 deletions

View File

@@ -100,9 +100,10 @@ services:
env_file:
- .env
# Replaces the Vercel Cron job from vercel.json (not available outside
# Vercel): calls the same endpoint on the same daily schedule using the
# same bearer-secret auth the route already expects.
# Der nächtliche Lauf: ruft täglich um 03:00 Uhr
# /api/cron/apply-pending-changes auf, damit fällig gewordene Versetzungen,
# Beförderungen, Karenzen und Reorganisationen wirksam werden. Ausgewiesen
# über CRON_SECRET — es gibt dabei keine angemeldete Person.
cron:
image: alpine:3.20
restart: unless-stopped