¿Qué es eso de entrega, despliegue e integración continua (CI/CD/CI)?

Hablar sobre continuous delivery, deployment & integration son conceptos que debes tener cuenta si o si en pleno 2020.

Rodríguez Patiño, Eduardo
2020-09-28 | 736 lecturas

Hoy vamos hablar de un tema que en pleno 2020 ya debes tener en cuenta si o si.

Comencemos

Recuerdo hace 10 años atrás cuando comence mis primeros trabajos, cuando teníamos que subir un pase a producción lo que hacíamos era conectarnos al servidor, borrar todo y reemplazar por la nueva versión. Aquel entonces trabaja con PHP y las primeras empresas si bien aprendí bastante eran medias informales en el sentido que no tenía una área bien constituida de TI.

Algunas preguntas que nos podemos formular sobre lo que viví:

  • ¿Cuánto iba a tardar el pase a producción?, ¿Dejamos sin sistema a los usuarios?.
  • ¿Cómo corroborábamos que los pases funcione bien?.
  • Si falla el pase .. ¿Qué hacemos?

Esto se soluciona con los conceptos que vamos aprender en esta entrada.

Continuous Integration C/I

Tiene como finalidad servir cuanto antes una nueva versión de nuestro software para que pueda pasar a producción a partir de nuestro repositorio de control de versiones, ejm GitHub, Bitbucket, etc.

La finalidad deste es que se corrobore que los cambios que realizados en la etapa de desarrollo no vayan afectar al negocio a través de la ejecución de las pruebas automatizada.

Usualmente cuando hacemos el proceso de build se ejecutan las pruebas y si estas no fallan, asegurán la integridad de nuestro proyecto.

Continuous Delivery C/D

Este se encarga de pasar nuestros proyectos a los ambiente correspondientes ya sea STAGING (en entorno de pre-producción) y luego PRODUCTION.

De esta manera automatizamos el despliegue o la puesta de nuestro código en los distintos ambientes.

El color amarillo hace referencia a que el pase a producción esta pendiente pero el código ya esta listo.

Continuous Deployment C/D

Es un concepto que muchos confudimos, incluido yo porque tiene mucha similitud con el anterior.

En la entrega continua para realizar un a pase a producción debe ser aprobado por un responsable, en cambio con el despliegue continuo todo es automatizado.

Según el modelo de negocio, la cantidad de pases deberán elegir cual es el más conveniente.

Todos los pases son automatizados a diferencia de la entrega continua.