Ir al contenido
use-cases / edit-crontab-from-phone / hero
CRON · PATCH · PUERTA 47B

Edita tu crontab desde el móvil, en el aeropuerto

Anuncio de embarque. El trabajo de informe diario está fijado para las 7 UTC, pero el destinatario está en Tokio y la hora está mal. Abres la URL del crontab en el móvil, tocas la fila, cambias dos campos, pulsas Guardar. El PATCH pasa. El trabajo se dispara esta noche con el nuevo horario. Sin sesión SSH, sin jump box, sin portátil.

use-cases / edit-crontab-from-phone / mechanism

Un PATCH desde un móvil, una entrada en el horario

El servicio de cron habla JSON sobre HTTPS. El navegador del móvil envía un PATCH al UUID de la entrada con el nuevo campo schedule. El crontab del sistema lo re-inyecta el servicio. El próximo disparo está en el cuerpo de la respuesta.

patch.from-phone.sh
PATCH · emisor
# Edición de dos líneas en una pantalla de 6 pulgadascurl -X PATCH \\"https://cron.containers.hoody.com/users/me/entries/0a3c8" \\-H "Content-Type: application/json" \\-d ["schedule":"30 4 * * 1-5"]# día laborable a las 04:30 — hora local de Tokio para el destinatario
200 OK · cron.containers.hoody.com
GET · echo
HTTP/1.1 200 OK// la entrada vuelve con el nuevo schedule y el próximo disparo{"id": "0a3c8","schedule": "30 4 * * 1-5","next_run": "2026-05-05T04:30:00+09:00","enabled": true}

El PATCH solo lleva el campo que cambió. El servicio lo fusiona en la entrada existente, recalcula next_run y re-inyecta la línea en el crontab del sistema. Sin sesión SSH, sin jump host, sin portátil.

use-cases / edit-crontab-from-phone / moves

Tres toques desde el anuncio hasta la puerta

Toda la edición cabe entre la llamada de embarque y la cola prioritaria. Abre la URL. Cambia el campo. Camina al avión.

ABRE

Abre la URL del crontab

El servicio de cron tiene su propia URL — cron.containers.hoody.com/users/me/crontab. La misma página se abre en cualquier navegador, incluido el del móvil. La autenticación es la URL. Sin bastion, sin prompt de AnyConnect, sin ritual de llave-en-portátil.

EDITA

Toca una fila, cambia un campo

Cada entrada gestionada es un objeto JSON con schedule, command, comment, enabled. Tocas la fila, el campo schedule se vuelve editable, sustituyes 0 7 * * * por 30 4 * * 1-5. Los demás campos no se tocan.

GUARDA

El PATCH llega, camina a la puerta

Guardar dispara un PATCH a /users/me/entries/[id]. La respuesta dice 200 OK y devuelve el nuevo next_run. El crontab del sistema se actualiza en menos de un segundo. Cierras la pestaña y caminas.

use-cases / edit-crontab-from-phone / facts

Las cuatro rutas que un móvil puede golpear

Hoody Cron expone un pequeño CRUD sobre el crontab. Cada entrada gestionada tiene un UUID; cada entrada se puede parchear de forma aislada. Abajo están los cuatro endpoints que el móvil usa para editar, silenciar, listar o borrar un trabajo.

ENTRADAS GESTIONADAS · /users/me/entries
AISLAMIENTO POR USUARIO
  • GET/users/me/entriesLista las entradas gestionadas del usuario actual. Cada fila lleva id, schedule, command, comment, enabled, next_run.
  • PATCH/users/me/entries/[id]Actualización parcial. Envía solo los campos que cambias. schedule, command, comment, enabled y expires_at se pueden parchear de forma aislada.
  • POST/users/me/entriesCrea una nueva entrada gestionada desde JSON. Se aceptan schedule estándar de 5 campos más macros (@hourly, @daily, @weekly, @monthly, @yearly).
  • DELETE/users/me/entries/[id]Elimina una entrada. El servicio re-inyecta el crontab del sistema sin ella. Útil cuando la edición del aeropuerto fue el arreglo equivocado y quieres el trabajo fuera por ahora.

Endpoints según el servicio Hoody Cron. Las rutas son relativas a https://PROJECT-CONTAINER-cron-1.SERVER.containers.hoody.com.

use-cases / edit-crontab-from-phone / capacity

Lo que la edición desde el móvil te da

Los números que importan a una persona de pie en una puerta con una pantalla de 6 pulgadas.

  1. CAMPOS PARCHEABLES5

    schedule, command, comment, enabled, expires_at. Cada uno se puede enviar solo. Los demás campos quedan intactos, así que el comentario que escribiste ayer a las 9 sobrevive a la edición del aeropuerto.

  2. ROUND-TRIP

    Un PATCH desde el móvil. Una respuesta 200 con el nuevo next_run. El crontab del sistema lo re-inyecta el servicio en la misma llamada — sin segunda petición, sin polling.

  3. SESIONES SHELL0

    Sin SSH, sin bastion, sin AnyConnect. El crontab es una URL y la autenticación es la URL. La llave hardware de tu portátil se queda en la mochila.

use-cases / edit-crontab-from-phone / punchline

Tu crontab es una URL, así que editarlo es una URL.

Cuando el horario es alcanzable desde un navegador, el lugar donde estás de pie deja de importar. La puerta de embarque es una oficina perfectamente válida. El móvil es una terminal perfectamente válida. El PATCH es el cambio.

ANTES · EDICIÓN SOLO DESDE PORTÁTILssh prod-bastion → sudo crontab -eabrir portátil · VPN · jump host · vi
DESPUÉS · UNA URLPATCH /users/me/entries/0a3c8tocar fila · cambiar campo · caminar a la puerta
  • sin SSH
  • sin portátil
  • el próximo disparo es ahora
Lee la API de cron
use-cases / edit-crontab-from-phone / replaces

Lo que esto reemplaza

La mayoría de estos solo existen porque el crontab no era alcanzable desde un móvil. Cuando el horario es una URL, los rituales para llegar al horario se van con él.

  • SSH desde un portátilVeinte minutos de fricción antes de que la primera tecla cuente
  • acceso ssh-bastionUn salto extra con sus propias credenciales y timeout
  • "Lo hago cuando esté en casa"Seis horas de retraso porque el portátil está en otra zona horaria
  • ediciones manuales de cron por PagerDutyLlamar al on-call para vigilar un cambio de horario de dos líneas
  • Llave hardware + bastion + malabares de crontabTres secretos y una sesión vi por un campo
  • Slack-al-ingeniero-seniorDespertar a otro humano para compartir la URL que ya tienes
use-cases / edit-crontab-from-phone / cta

Estuviste de pie en la puerta y cambiaste cuándo se dispara el trabajo esta noche.

use-cases / edit-crontab-from-phone / related

Lee los otros