Introducción a CI/CD

Despliegue de Aplicaciones Web

Curso 2024/2025



1 ¿Qué es CI/CD?

CI/CD son las siglas de Integración Continua (Continuous Integration) y Entrega/Despliegue Continuo (Continuous Delivery/Deployment).

Podemos decir que CI/CD es un conjunto de prácticas que permiten a los equipos de desarrollo de software automatizar tareas como la integración del código, realización de tests y el despliegue de las aplicaciones de un manera rápida y segura.

Imagen: ByteByteGo CI/CD in 5 minutes

2 Conceptos básicos de CI/CD

2.1 Pipeline

Un pipeline es una secuencia automatizada de pasos que se ejecutan para construir, probar y desplegar software. Cada paso en el pipeline se llama etapa (stage), y puede incluir tareas como:

Los pipelines se suelen definir en archivos YAML.

En GitHub Actions, a los pipelines se les llama workflows.

2.2 Integración Continua (CI)

Consiste en integrar los nuevos cambios que se realizan de manera frecuente sobre el código fuente de una aplicación en un repositorio compartido.

Un proceso típico de CI puede ser:

Herramientas de CI:

2.3 Entrega Continua (CD: Continuous Delivery)

Consiste en automatizar la entrega del código a entornos de prueba o preproducción.

Un proceso típico de Entrega Continua puede ser:

2.4 Despliegue Continuo (CD: Continuous Deployment)

Consiste en automatizar el despliegue a producción después de que el código pasa todos los tests de CI.

A diferencia con la Entrega Continua, en este caso, el código se despliega automáticamente en producción sin que el equipo tenga que hacer nada.

2.5 Artefactos

Es lo que se crea a partir del código fuente, pueden ser archivos binarios, paquetes o imágenes Docker. Los artefactos se almacenan en repositorios para su posterior uso en despliegues.

2.6 Entornos

Son los diferentes lugares donde se despliega la aplicación. Los más comunes son:

3 Referencias

4 Licencia

Licencia de Creative Commons
Esta página forma parte del curso Despliegue de Aplicaciones Web de José Juan Sánchez Hernández y su contenido se distribuye bajo una licencia Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.