Migrar desde EasyCron
Traslada tus jobs de URL de EasyCron a SteadyCron paso a paso — recrea cada job en un manifiesto YAML, ejecuta ambos en paralelo y luego apaga EasyCron.
EasyCron llama a tus URL según un plan. SteadyCron hace lo mismo — y añade reintentos con backoff, timeouts por job, monitorización heartbeat, alertas por Slack, Discord, Telegram, email y webhooks, y un flujo YAML/Terraform para que tus planes vivan en git en lugar de en un dashboard.
No existe un archivo de exportación de EasyCron que importar, así que la migración es un bucle manual corto: recrear cada job, ejecutar ambos en paralelo, apagar el antiguo.
1. Lista tus jobs de EasyCron
En el dashboard de EasyCron, anota para cada cron job:
- la URL (y el método HTTP, si no es un GET simple)
- la expresión cron y la zona horaria
- las cabeceras o autenticación que espera el endpoint
2. Recrea cada job en un manifiesto
steadycron manifest add job añade jobs de uno en uno a steadycron.yaml — valida el
resultado y nunca toca las entradas existentes:
steadycron manifest add job --kind http --name nightly-report --schedule "0 2 * * *"
O escribe el manifiesto directamente:
jobs:
- id: nightly-report
name: Nightly report
kind: http
method: GET
url: https://app.example.com/tasks/nightly-report
schedule: "0 2 * * *"
timezone: Europe/Madrid
retries: 3
headers:
Authorization: Bearer ${CRON_SECRET} # se resuelve desde --env-file al aplicar
Después valida y aplica:
steadycron validate steadycron.yaml
steadycron apply steadycron.yaml --env-file secrets.env --namespace prod
3. Ejecuta ambos en paralelo y luego cambia
Deja que SteadyCron y EasyCron llamen al endpoint durante un día o dos (asegúrate de que la tarea es idempotente, o desplaza los planes unos minutos). Cuando el registro de ejecución muestre runs en verde, pausa o elimina el job de EasyCron.
Qué ganas
| EasyCron | SteadyCron | |
|---|---|---|
| Reintentos ante fallos | Limitados, según plan | Configurables con backoff exponencial |
| Control de timeout | Según plan | Por job |
| Monitorización heartbeat de tus propios crons | No | Sí |
| Canales de alerta | Email, webhook | Email, Slack, Discord, Telegram, webhook |
| Planes en git (YAML / Terraform) | No | Sí — validate, plan, apply |
| Alojamiento | EE. UU. | UE (RGPD nativo, DPA firmado) |
Siguientes pasos
- YAML y CLI — el flujo completo del manifiesto
- HTTP jobs — request builder, reintentos, timeouts
- Alertas — dirige los fallos al canal correcto