3. Dos Carriles de Cambio¶
No todos los cambios tienen el mismo riesgo. El sistema ofrece dos caminos: uno rápido y automatizado para ajustes menores, y uno lento con revisión humana para cambios de alto impacto.
Carril rápido¶
Para: ajustes de bajo riesgo. Actualizaciones de imágenes ya validadas, cambios de configuración no estructurales, ajustes de recursos basados en métricas.
Proceso: commit directo a main → Forgejo Actions ejecuta plan → despliegue automático → snapshot ZFS (sistema de archivos con integridad de datos) → notificación solo si hay error.
Barreras automáticas: cambio en Tier A → redirigido a carril lento. SLO (objetivo de nivel de servicio) no cumplido → bloqueado. Backup fallido → bloqueado. Drift detectado → bloqueado.
Carril lento¶
Para: cambios en red, permisos, secretos, host Proxmox, nuevos servicios.
Proceso: feature branch → Pull Request → tofu plan automático → revisión humana obligatoria → merge → despliegue desde Semaphore → verificación post-deploy.
Clasificación automática¶
| Ámbito | Carril |
|---|---|
| Un LXC (contenedor ligero de Proxmox), sin red | Rápido (con barreras) |
| Un LXC (contenedor ligero de Proxmox), Tier A | Lento |
| Múltiples LXC | Lento |
| Red, firewall, DNS (servidor de nombres de dominio) | Lento |
| Secretos, auth | Lento |
| Host Proxmox | Lento |
| Documentación | Rápido |
El admin puede forzar a lento. Nunca a rápido.
Trazabilidad¶
Ambos carriles dejan commit en Forgejo, log en Semaphore, snapshot ZFS (sistema de archivos con integridad de datos) y notificación ntfy.
Relaciones¶
- SLOs (objetivos de nivel de servicio) como Puertas: barrera automática del carril rápido
- Cuarentena de Artefactos: imágenes con cuarentena cumplida → carril rápido
- Regla de Oro: servicio nuevo → siempre carril lento con checklist completa
- Modo de Emergencia: tercer carril cuando los dos normales están bloqueados