Migrer depuis cron-job.org
Migrez vos jobs cron-job.org vers SteadyCron pas à pas — recréez chaque job URL dans un manifeste YAML, ajoutez réessais et alertes, puis désactivez les anciens jobs.
cron-job.org est un bon pinger d’URL gratuit. Quand un job devient important — une tâche de facturation, une synchro de données, tout ce qu’un client remarque quand ça s’arrête en silence — il faut des réessais, des timeouts, de vraies alertes et un journal d’exécution auditable. C’est l’écart que comble SteadyCron, avec des plannings définis en YAML ou Terraform plutôt que dans un dashboard.
Pas de fichier d’export : la migration est une courte boucle manuelle.
1. Listez vos jobs cron-job.org
Dans la console cron-job.org, notez pour chaque job :
- l’URL, la méthode HTTP et un éventuel body
- le planning et le fuseau horaire
- les headers personnalisés (p. ex. un token vérifié par votre endpoint)
2. Recréez chaque job dans un manifeste
steadycron manifest add job ajoute les jobs un par un à steadycron.yaml :
steadycron manifest add job --kind http --name warm-cache --schedule "*/15 * * * *"
Ou directement dans le manifeste :
jobs:
- id: warm-cache
name: Warm cache
kind: http
method: POST
url: https://app.example.com/tasks/warm-cache
schedule: "*/15 * * * *"
timezone: UTC
retries: 3
headers:
Authorization: Bearer ${CRON_SECRET} # résolu depuis --env-file à l'apply
Puis validez et appliquez :
steadycron validate steadycron.yaml
steadycron apply steadycron.yaml --env-file secrets.env --namespace prod
3. Faites tourner les deux en parallèle, puis basculez
Laissez les deux services appeler l’endpoint un jour ou deux (tâche idempotente, ou plannings décalés de quelques minutes). Une fois des runs verts côté SteadyCron, désactivez le job cron-job.org.
Ce que vous gagnez
| cron-job.org | SteadyCron | |
|---|---|---|
| Réessais en cas d’échec | Non | Configurables, backoff exponentiel |
| Timeouts | Fixes, courts | Par job, configurables |
| Monitoring heartbeat de vos propres crons | Non | Oui |
| Canaux d’alerte | E-mail, Slack, Discord, Telegram, webhook | |
| Plannings dans git (YAML / Terraform) | Non | Oui — validate, plan, apply |
| Historique d’exécution | Basique | Statut, réponse et durée par run |
| Hébergement | UE | UE (RGPD natif, DPA signé) |
Étapes suivantes
- YAML & CLI — le workflow manifeste complet
- Jobs HTTP — request builder, réessais, timeouts
- Alertes — router les échecs vers le bon canal