Crear una automatización
Define el proyecto, la petición, el agente y el horario — y elige con cuidado lo que corre solo.
Antes de empezar
- Un proyecto en la app, con el repositorio que la rutina va a usar.
- El agente que va a ejecutar, instalado y autenticado.
- Claridad sobre qué debe hacer la rutina y cada cuánto tiempo. Una petición vaga corriendo cada hora genera una hora de trabajo vago por hora.
El formulario
- Abre Automatizaciones y usa Crear automatización.
- Dale un Nombre — es como la vas a reconocer en la lista.
- Escribe qué pide: el texto que el agente recibe en cada ejecución, en el lenguaje en que le escribirías a una persona. Hay plantillas listas para empezar de algo conocido.
- Elige el agente que ejecuta.
- Define la programación.
- Ajusta lo que necesites — destino, precheck, sesión, huso — y guarda.
La programación
El campo acepta formas diferentes, de la más simple a la más precisa:
| Forma | Ejemplo | Cuándo usarla |
|---|---|---|
| Presets | cada hora, diariamente, en días hábiles, semanalmente | Es lo que quieres en casi todos los casos |
| Cron de 5 campos | 0 9 * * 1-5 |
Cuando necesitas un horario específico |
| RRULE | string de recurrencia | Cuando la regla no cabe en un cron |
El huso también es configurable. Vale la pena revisarlo: un horario «a las 9» en el huso equivocado corre a la hora equivocada.
Dónde trabaja la rutina
La rutina necesita saber dónde correr, y eso cambia lo que deja atrás:
- En un workspace existente — el trabajo ocurre en esa carpeta, con lo que ya está allí.
- Creando una worktree por ejecución — cada ronda nace en un checkout nuevo. Eso aísla las rondas entre sí, y consume recursos cada vez: disco para la worktree, tiempo para preparar el entorno. Úsalo cuando rondas independientes sean el punto.
- En un host o configuración de host específica — para correr en la máquina correcta, no en la tuya.
- Con un contexto de fuente — cuando los datos de la tarea deben venir de un host o cuenta específicos.
Si no informas el repositorio, el comando usa la worktree de Elyra correspondiente a la carpeta desde donde se llamó, cuando consigue resolver una.
Sesión entre rondas
- Reutilizar la sesión — las rondas siguientes se envían a la sesión viva de esa automatización, cuando todavía existe. Tiene sentido para trabajo que tiene continuidad (una revisión que evoluciona).
- Sesión nueva — cada ronda empieza limpia. Tiene sentido para trabajo independiente, y es lo más previsible: nada de una ronda contamina la siguiente.
La reutilización solo vale para automatizaciones de workspace existente.
Precheck: la puerta antes de la ronda
El precheck es un comando limitado que corre antes de la ejecución:
- Sale con 0 → la ronda ocurre.
- Cualquier otra salida → la ronda se registra como omitida, y nada más pasa.
Es la forma de que una rutina no gaste trabajo cuando no hay nada que hacer. Un ejemplo de forma: un comando que lista los pull requests abiertos y falla cuando no hay ninguno. El techo de tiempo del precheck es configurable — sin él, un comando que se traba traba la rutina.
Pausar después de crear
Si quieres dejar la rutina lista pero sin correr, crea y después pausa. El estado queda guardado y nada se ejecuta hasta que reanudes.
Alcance y límites
- La rutina corre sin que mires. Antes de dejar una activada, confirma qué puede hacer el agente en ese proyecto: actúa con los permisos que tiene.
- El precheck decide, no corrige. Salta la ronda; no arregla el entorno.
- Crear una worktree por ejecución tiene un costo recurrente. En un intervalo corto, eso se convierte en disco y tiempo.