Este documento describe el concepto de "Pipelines como código" para la entrega continua. Define un pipeline de despliegue como una secuencia automatizada de pasos para llevar el código desde el control de versiones hasta producción. Explica que las herramientas como Drone permiten definir estos pipelines dentro del código de la aplicación para obtener mayor control y reproducibilidad. Finalmente, destaca los beneficios de esta práctica como tener el código y el sistema de compilación en el mismo repositorio y librarse del mantenimiento de servidores.
4. Las aplicaciones están cambiando~2000 Hoy
Monolito
Grandes
servidores
Cambios
lentos
Servicios
desacoplados
Nube
Continuous
Delivery
Docker
IaaS
Lenguajes/frame
works modernos
5. Qué quieren los developers?
● Unit Tests
● Functional Tests
● Performance Tests
● Infrastructure
● Deployment
● Build System
6. Continuous Delivery Pipeline
Un pipeline de despliegue,
es una secuencia de pasos
automatizados, con el fin
de llevar el código
versionado, en un
entregable a producción.
11. Herramientas de CD~2000 Hoy
Hudson
CC: Builds as code
Hudson/Jenkins: Pipelines independientes del código
Travis: Camino a Pipelines as Code
Drone: 100% Pipe as code
12. Drone
Drone es un sistema de Continuous Delivery usando tecnología de
contenedores. Drone se instala a través de un docker-compose y usa
archivos .YMLs para definir y ejecutar pipelines en contenedores.
13. Drone - Cómo funciona
● Se integra a un repositorio.
● Examina el archivo “drone.yml”.
● Ejecuta cada Paso dentro de un container.
14. Drone
● Escrita en GoLang
● Usa Docker para correr el pipeline
● Sistema de plugins flexible usando
imágenes Docker
● Soporta cualquier lenguaje
● Libre de Mantenimiento
19. Beneficios de Pipelines as Code con Drone
● El código para reproducir el pipeline y el build system está
en el mismo repositorio que el código del producto.
● Puedo ejecutar y testear el pipeline en mi maquina.
● Libre de Mantenimiento.
● Fácil de definir, ejecutar y extender.
● 100 % integrado con Docker.
20. Aún hay más...
● Te obliga a seguir buenas prácticas.
● Los developers tienen el control del build system.
21. Con PIPELINES AS CODE,
no necesitas hablar con
otras personas...