Von Vercel Cron migrieren
Vercel.json-Cron-Einträge mit einem einzigen Befehl in ein SteadyCron-Manifest importieren — Vercels Einschränkung auf einmal täglich und UTC-only entfernen.
Vercels Hobby-Plan beschränkt Cron-Jobs auf einmal täglich in UTC. Selbst auf bezahlten Plänen
sind Zeitpläne an vercel.json gebunden — Änderungen erfordern ein Redeploy, es gibt keine
Wiederholungsversuche, und die Logs sind dünn ohne Alarmierung.
steadycron import vercel konvertiert Ihre vercel.json-Cron-Einträge mit einem einzigen
Befehl in ein SteadyCron-Manifest.
Schnellstart
# 1. Manifest generieren (liest vercel.json im aktuellen Verzeichnis)
steadycron import vercel \
--base-url https://app.example.com \
--cron-secret-env CRON_SECRET \
-o steadycron.yaml
# 2. Überprüfen und validieren
steadycron validate steadycron.yaml
# 3. Secret setzen und anwenden
echo "CRON_SECRET=ihr-secret-hier" > secrets.env
steadycron apply steadycron.yaml --env-file secrets.env --namespace prod
Wie es funktioniert
Der Importer liest vercel.json (oder einen als erstes Argument übergebenen Pfad) und gibt pro
Cron-Eintrag einen http GET-Job aus. Die vollständige URL wird aus --base-url + Pfad gebaut,
mit timezone: UTC.
--cron-secret-env NAME — anstatt den Secret-Wert einzubetten, gibt das Manifest aus:
headers:
Authorization: Bearer ${CRON_SECRET}
Der ${…}-Platzhalter wird zur sync/apply-Zeit über --env-file oder die Prozessumgebung
aufgelöst. Das Manifest selbst enthält niemals den Secret.
--dry-run — Vorschau der generierten Ausgabe, ohne eine Datei zu schreiben.
Nach der Migration
Sobald SteadyCron einen Job übernimmt, entfernen (oder kommentieren Sie aus) den entsprechenden
Eintrag aus vercel.json und deployen Sie neu — um ein doppeltes Auslösen desselben Endpunkts
zu verhindern.
Danach können Sie Zeitpläne verschärfen und jobspezifische Zeitzonen setzen — beides sind Funktionen, die Vercel nicht bietet.
Was Sie gewinnen
| Vercel Cron | SteadyCron | |
|---|---|---|
| Mindestintervall | Einmal täglich (Hobby) | Konfigurierbar (je nach Tarif) |
| Zeitzone | Nur UTC | Pro Job, mit Sommerzeit |
| Wiederholungsversuche | Keine | Ja — konfigurierbar |
| Timeout-Durchsetzung | Keine | Ja — pro Job |
| Heartbeat-Monitoring | Nein | Ja |
| Alarmierung | Nein | E-Mail, Slack, Discord, Telegram, Webhook |
| Zeitplan ändern | vercel.json bearbeiten + Redeploy | Dashboard, CLI oder YAML — kein Redeploy |
| Ausführungsprotokoll | Plattform-Logs, vergänglich | Status, Body und Dauer pro Lauf |
Nächste Schritte
- IaC-Workflow — vollständige CLI-Referenz
- CI/CD-Einrichtung — Plan bei PR, Anwenden beim Merge
- Heartbeat-Monitoring — auch serverseitige Skripte überwachen