Saltar al contenido principal
deploy es un bloque dentro de un servicio de aplicación que define el valor por defecto y el bloqueo de tres comportamientos: despliegues sin downtime (blue-green), rollback automático y rollback con datos. Solo restringe: el plan sigue decidiendo qué existe, y un manifiesto nunca activa algo que el plan no incluye.

Los tres ajustes

Cambiar un ajuste bloqueado a otro valor devuelve 403 TEMPLATE_SETTING_LOCKED; enviar el valor de la plantilla siempre se acepta. Pon "off" y "on" entre comillas en YAML, o el parser los lee como booleanos. Para saber cómo funcionan blue-green y el rollback en una aplicación normal, consulta Rollback y despliegues sin downtime.

Cuándo bloquear blue-green en off

Blue-green ejecuta la copia antigua y la nueva al mismo tiempo mientras se traslada el tráfico. Bloquéalo en off (default: "off", locked: true) siempre que dos copias ejecutándose a la vez pudieran causar daño. Déjalo abierto (auto, sin bloquear) para aplicaciones web y APIs sin estado que guardan sus datos en una base de datos gestionada y responden peticiones sin efectos secundarios al arrancar.

Cuándo exigir rollback con datos

Usa rollback: { with_data: required } cuando la versión nueva migra la base de datos o los archivos de datos al arrancar. Hacer rollback solo del código dejaría a un programa antiguo leyendo un esquema que ya no entiende. Con required, se bloquean el rollback manual y el automático solo del código, y la vía de vuelta es restaurar el snapshot tomado antes de la actualización, que devuelve juntos el código, /app y las bases de datos del stack. Usa optional (el valor por defecto) cuando el código se puede revertir de forma independiente, como en un bot sin estado cuyo estado es solo un token.

Actualizaciones de la plantilla

Quien usa la plantilla recibe una versión nueva solo cuando decide actualizar. Antes de la actualización, la plataforma toma un snapshot de seguridad de /app y de las bases de datos del stack, actualiza los servicios uno tras otro y, si un paso falla, vuelve al snapshot. with_data: required es lo que indica a la plataforma que restaurar las bases de datos forma parte de volver atrás.

Ejemplo: n8n y el bot de inicio

n8n migra su base de datos, ejecuta programaciones y puede mantener SQLite, así que bloquea blue-green en off y exige rollback con datos:
El bot de inicio no tiene datos que migrar, pero dos copias con el mismo token responderían dos veces:
Última modificación el 30 de octubre de 2026