¿Qué es Integración Continua o Continuous Integration?
Clase 8 de 29 • Curso Profesional de DevOps 2017
Contenido del curso
Entendiendo qué es DevOps
Ambientes de Desarrollo
Proceso de Integración Continua (Continuous Integration)
Proceso de Continuous Delivery
- 11

¿Qué es Continuous Delivery?
05:39 min - 12

Entendiendo el Flujo de Continuous Delivery o Continuous Delivery Pipeline
01:54 min - 13

Creando Nuestro Ambiente de Control de Calidad (Quality Assurance) con Now.sh
04:40 min - 14

Integrando nuestro Proceso de Integración Continua a nuestro Flujo de Entrega Continua (Continuous Delivery Pipeline)
15:26 min
DigitalOcean, Instancias y LoadBalancers
Manejo de Servidores Desde el Punto de Vista de DevOps
Infrastructure as Code, Creando Infraestructura a Partir de Código
Automatizando nuestro Flujo de Entrega Continua Completo
Conclusión
¿Qué es un CI?
Las siglas significan Continuous Integration (Integración Continua).
CI como proceso significa que cada cambio subido a nuestro sistema de control de versiones ha sido puesto a prueba y que los cambios han sido validados y aceptados. CI como herramienta usualmente se refiere a la herramienta que facilita el proceso de CI. Esto puede causar confusión si no se entiende el contexto en el que se está hablando. En este curso nos referiremos a CI como la herramienta.
Cuando integramos con un CI le podemos dar ciertas responsabilidades. Correr las pruebas, trigger/package el código y hasta hacer el deployment. La herramienta ayuda, pero no lo es todo. Cuando cambios van a ser sometidos, el hecho de que las pruebas pasen es bueno. Pero si los nuevos cambios están fuera del scope de las pruebas, más pruebas deben ser añadidas. Aquí entra el concepto de “code reviews” donde otros developers verifican el código siendo propuesto, ofrecen feedback y aprueban el código. Tu CI es solo tan efectivo como la efectividad de las pruebas siendo ejercidas. Además, hacer “code reviews” ayuda a tener consenso y evitar silos de conocimiento.
Algunos de los CIs más comunes son Travis, Circle, Codeship y Jenkins. De estos, Jenkins es el más común para correr internamente. Los demás ofrecen servicios y no hay que correrlos nosotros.