Publicado el

Construir una vez, desplegar por digest

Si en producción se despliega algo distinto de lo que se probó en aceptación, la aceptación no sirvió de nada. Construir una sola vez y mover siempre el mismo artefacto, identificado por su huella, cierra esa puerta.

Línea de servicio Ingeniería de Plataforma

"En pruebas funcionaba"

Es una de las frases más repetidas en cualquier incidente. Y casi siempre es verdad: lo que funcionaba en pruebas no era exactamente lo que se desplegó en producción. Se volvió a compilar, se actualizó una dependencia entre medias, la etiqueta "última versión" apuntaba ya a otra cosa.

La huella del artefacto

Lo probado es lo desplegadoReconstruir lleva a producción algo no probado; desplegar por huella lleva exactamente lo aprobado.PLATAFORMA · DESPLIEGUELo probado es lo desplegadoReconstruir o usar «última versión»DESARROLLOsha256:4f1a…ACEPTACIÓNsha256:4f1a…PRODUCCIÓNsha256:9c07…Producción recibió algo que nadie probó.Construir una vez, desplegar por huellaDESARROLLOsha256:4f1a…ACEPTACIÓNsha256:4f1a…PRODUCCIÓNsha256:4f1a…La compuerta aprobó esa huella; esa huella es la que corre.Volver atrás = redesplegar la huella anterior, que sigue existiendo intacta.Huellas de ejemploN100F · n100f.com

Cuando una aplicación se empaqueta (por ejemplo, como imagen de contenedor), el resultado tiene una huella criptográfica única, un digest: un identificador calculado a partir de su contenido exacto. Si cambia un solo byte, cambia la huella.

Desplegar por digest significa:

  1. Se construye una vez, en un entorno controlado, para la arquitectura de destino.
  2. Se registra la huella de lo construido.
  3. Cada entorno recibe ese mismo artefacto por su huella, no por un nombre o una etiqueta que pueda cambiar.
  4. La compuerta a producción aprueba una huella concreta: la que pasó la aceptación.

Las etiquetas legibles ("versión 2.3") siguen siendo útiles para las personas, pero no deciden qué se despliega.

Lo que se gana

  • Lo aprobado es lo desplegado, sin margen de duda.
  • Volver atrás es inmediato: se redespliega la huella anterior, que sigue existiendo tal cual.
  • La trazabilidad es completa: de una huella se llega al código, a la construcción y a la aprobación que la llevó a producción.

Que el artefacto sea idéntico en todos los entornos solo tiene sentido si los entornos también se parecen. Ese es el siguiente paso.


Cómo lo aplicamos: Ingeniería de Plataforma.

Si tu costo cloud crece sin que nadie sepa por qué, o tu arquitectura depende de quien la montó, conversemos.

Conversemos