Adopter les jobs du dashboard dans IaC
Utilisez steadycron export pour transférer vos jobs existants du dashboard dans un manifeste YAML et commencez à gérer votre compte comme du code.
Si vous avez déjà des jobs dans le dashboard SteadyCron, steadycron export exporte
l’état complet de votre compte dans un manifeste YAML. À partir de là, vous pouvez
le commiter dans git, réviser les changements dans des PRs et les appliquer avec la CLI
— sans perdre aucun job existant.
Étape 1 — créer une clé API
Allez dans Paramètres → Clés API dans le dashboard et créez une clé. Donnez-lui le scope write pour que la CLI puisse à la fois lire et appliquer.
Copiez la clé — vous ne la verrez qu’une seule fois.
Étape 2 — exporter votre compte
export STEADYCRON_API_KEY=sc_...
steadycron export --namespace my-app > manifests/my-app.yaml
Le flag --namespace assigne toutes les ressources exportées à ce namespace. À partir
de là, apply --prune ne supprimera que les ressources dans my-app — pas les jobs
que vous créerez plus tard via le dashboard (ceux-ci se retrouvent dans le namespace
par défaut).
Si vous gérez plusieurs environnements, exportez chacun séparément avec un namespace différent :
steadycron export --namespace production > manifests/production.yaml
steadycron export --namespace staging > manifests/staging.yaml
Étape 3 — examiner le manifeste exporté
Ouvrez le fichier. Vous verrez :
- Chaque job avec son calendrier, son type et ses paramètres
- Un champ
idsur chaque ressource (assigné automatiquement si non présent) - Les secrets remplacés par des espaces réservés
${VAR_NAME}— sûrs à commiter tels quels - Les variables de gabarit conservées comme
{{var}}— également sûres à commiter
Ajoutez des valeurs id à toute ressource qui n’en a pas. Les IDs sont le mécanisme
par lequel la CLI suit l’identité stable. Une fois que vous avez commité, changer un ID
est traité comme une suppression suivie d’une création.
Étape 4 — valider
steadycron validate manifests/my-app.yaml
Corrigez les erreurs signalées avant de continuer.
Étape 5 — commiter
git add manifests/
git commit -m "chore: adopt SteadyCron account into IaC"
Votre manifeste est désormais la source de vérité. Les modifications futures doivent passer par ce fichier, et non par le click-ops du dashboard.
Étape 6 — configurer la CI
Connectez GitHub Actions pour publier un diff du plan sur chaque PR et appliquer lors du merge :
- Configuration CI/CD — workflows GitHub Actions prêts à copier-coller
Effectuer des modifications après l’adoption
Le flux de travail à partir de maintenant :
- Modifier
manifests/my-app.yaml - Pousser une branche et ouvrir un PR
- La CI publie le diff du plan en commentaire
- Merge → la CI applique le changement
Ajouter un nouveau job via le dashboard après l’adoption : c’est tout à fait possible.
Les jobs créés via le dashboard se retrouvent dans le namespace par défaut et ne seront
pas touchés par un apply --prune avec namespace. Si vous souhaitez plus tard intégrer
ces jobs dans IaC, relancez export pour ce namespace et fusionnez le résultat dans
votre manifeste.
À propos de --prune
Une fois que vous gérez un namespace avec la CLI, utilisez apply --prune en CI. Cela
garantit que les jobs supprimés du manifeste sont également supprimés de votre compte
— conservant le manifeste comme l’unique référence faisant autorité.
Sans --prune, sync créera et mettra à jour mais ne supprimera jamais. Les jobs
retirés du manifeste resteront dans votre compte sauf si vous les supprimez manuellement.
Liens connexes
- Flux de travail IaC — référence complète des commandes CLI
- Référence du manifeste — chaque champ documenté
- Migrer depuis crontab — convertir un fichier crontab