Dashboard-Jobs in IaC übernehmen
Verwenden Sie steadycron export, um Ihre bestehenden Dashboard-Jobs in ein YAML-Manifest zu übertragen und Ihr Konto als Code zu verwalten.
Wenn Sie bereits Jobs im SteadyCron-Dashboard haben, exportiert steadycron export
den gesamten Kontozustand in ein YAML-Manifest. Von diesem Zeitpunkt an können Sie
es in git committen, Änderungen in PRs reviewen und mit der CLI anwenden — ohne
bestehende Jobs zu verlieren.
Schritt 1 — API-Schlüssel erstellen
Gehen Sie im Dashboard zu Einstellungen → API-Schlüssel und erstellen Sie einen Schlüssel. Geben Sie ihm den write-Scope, damit die CLI sowohl lesen als auch anwenden kann.
Kopieren Sie den Schlüssel — Sie sehen ihn nur einmal.
Schritt 2 — Ihr Konto exportieren
export STEADYCRON_API_KEY=sc_...
steadycron export --namespace my-app > manifests/my-app.yaml
Das Flag --namespace weist alle exportierten Ressourcen diesem Namespace zu.
Fortan entfernt apply --prune nur Ressourcen innerhalb von my-app — nicht Jobs,
die Sie später über das Dashboard erstellen (diese landen im Standard-Namespace).
Wenn Sie mehrere Umgebungen verwalten, exportieren Sie jede separat mit einem anderen Namespace:
steadycron export --namespace production > manifests/production.yaml
steadycron export --namespace staging > manifests/staging.yaml
Schritt 3 — Das exportierte Manifest prüfen
Öffnen Sie die Datei. Sie sehen:
- Jeden Job mit seinem Zeitplan, Typ und seinen Einstellungen
- Ein
id-Feld bei jeder Ressource (automatisch vergeben, falls noch nicht vorhanden) - Secrets ersetzt durch
${VAR_NAME}-Platzhalter — direkt commit-sicher - Template-Variablen als
{{var}}erhalten — ebenfalls commit-sicher
Fügen Sie id-Werte bei jeder Ressource hinzu, die keine hat. IDs sind der
Mechanismus, mit dem die CLI stabile Identitäten verfolgt. Sobald Sie committen,
wird eine Änderung der ID als Löschen + Neuanlegen behandelt.
Schritt 4 — Validieren
steadycron validate manifests/my-app.yaml
Beheben Sie alle gemeldeten Fehler, bevor Sie fortfahren.
Schritt 5 — Committen
git add manifests/
git commit -m "chore: adopt SteadyCron account into IaC"
Ihr Manifest ist nun die einzige Quelle der Wahrheit. Künftige Änderungen sollten über diese Datei erfolgen, nicht über Click-Ops im Dashboard.
Schritt 6 — CI einrichten
Verbinden Sie GitHub Actions, um bei jedem PR einen Plan-Diff zu posten und beim Merge anzuwenden:
- CI/CD-Einrichtung — fertige GitHub-Actions-Workflows zum Kopieren
Änderungen nach der Übernahme vornehmen
Der Workflow von hier an:
manifests/my-app.yamlbearbeiten- Branch pushen und PR öffnen
- CI postet den Plan-Diff als Kommentar
- Merge → CI wendet die Änderung an
Einen neuen Job nach der Übernahme über das Dashboard hinzufügen: Das ist in
Ordnung. Dashboard-erstellte Jobs landen im Standard-Namespace und werden von
einem namespaced apply --prune nicht berührt. Wenn Sie diese Jobs später unter
IaC bringen möchten, führen Sie export für diesen Namespace erneut aus und
führen Sie die Ausgabe in Ihr Manifest ein.
Zu --prune
Sobald Sie einen Namespace mit der CLI verwalten, verwenden Sie apply --prune
in CI. Das stellt sicher, dass Jobs, die aus dem Manifest entfernt wurden, auch
aus Ihrem Konto gelöscht werden — das Manifest bleibt die alleinige, maßgebliche
Aufzeichnung.
Ohne --prune erstellt und aktualisiert sync zwar, löscht aber nie. Jobs,
die aus dem Manifest entfernt wurden, verbleiben in Ihrem Konto, bis Sie sie
manuell löschen.
Weiterführende Themen
- IaC-Workflow — vollständige CLI-Befehlsreferenz
- Manifest-Referenz — jedes Feld dokumentiert
- Von Crontab migrieren — Crontab-Datei konvertieren