馃敟 Continuous Integration CI/CD

鈽 驴Qu茅 significa CI (Continous Integration)?

La pr谩ctica de Integraci贸n Continua (Continuous Integration) cada que realicemos un cambio, este cambio es integrado con los cambios que otros programadores realizan. Para poder integrar esto se realizan tareas de construcci贸n (build) que pueden incluir multiples pasos como instalar dependencias y compilar el c贸digo.

Durante la integraci贸n continua se verifica que el proyecto puede ser construido y que el c贸digo empujado cumpla entre otras cosas con requisitos como pruebas de c贸digo y formateado (convenciones) de este.

As铆 entonces la fase de Continuous Integration esta compuesta por.

  • build
  • code quality (calidad del c贸digo)
  • tests (pruebas)
  • package (empaquetamiento)

鈽 驴Qu茅 significa CD (Continuous Delivery)?

El Despliegue Continuo (Continuous Delivery) es la pr谩ctica mediante la cual nos aseguramos de que el software pueda ser enviado a producci贸n en cualquier momento.

Usualmente la 煤ltima versi贸n del c贸digo lista para salir a producci贸n se encuentra ya sea en el ambiente de testing o staging. Un ambiente de staging tambi茅n es conocido en ocasiones como preproduction (pre-producci贸nn).

As铆 entonces la fase de Continuous Delivery esta compuesta por:

  • testing
  • staging
  • production

鈽 驴Cu谩les son las ventajas del uso de Continuous Integration?

Los beneficios de utilizar integraci贸n continua son:

  • La detecci贸n temprana de errores.
  • Reduce el numero de problemas de integraci贸n.
  • Permite a los desarrolladores trabajar m谩s r谩pido.

鈽 驴Cu谩les son las ventajas de utilizar Continuous Delivery?

  • Nos aseguramos que todo lo que hacemos puede ser liberado.
  • Los riesgos se reducen al liberar una nueva entrega.
  • Se liberan iteraciones mucho mas r谩pido.