
Python Continuous Integration and Delivery
Moritz Lenz
- Editorial
- Apress
- Año
- 2019
- Páginas
- ~194
- Nivel
- Intermedio
De qué trata
Python Continuous Integration and Delivery: A Concise Guide with Examples es una obra técnica escrita por Moritz Lenz y publicada por Apress a principios de 2019, diseñada para cerrar la brecha entre el desarrollo de aplicaciones en Python 3 y su puesta en producción predecible. El libro está orientado a desarrolladores intermedios de Python, ingenieros de operaciones y especialistas DevOps que ya saben escribir código y funciones en Python, pero carecen de una metodología estandarizada para verificar la calidad, empaquetar de forma reproducible y desplegar sus aplicaciones en servidores Linux.
El contenido cubre paso a paso el ciclo de entrega: comienza con el diseño de pruebas unitarias y de integración empleando unittest y pytest, continúa con la automatización de builds y ejecuciones continuas con Jenkins, y profundiza en el empaquetado nativo para distribuciones Debian/Ubuntu mediante dh-virtualenv para encapsular entornos virtuales sin colisiones de dependencias. Enseña a crear repositorios internos de paquetes con herramientas como aptly, automatizar la configuración y el aprovisionamiento de servidores con playbooks de Ansible y coordinar tuberías complejas de múltiples etapas con GoCD (Go Continuous Delivery), atendiendo además a la seguridad, el análisis estático y la gestión de estados y migraciones.
A lo largo del texto se construye una infraestructura práctica automatizada sobre un entorno de pruebas virtualizado con Vagrant y VirtualBox, materializando un pipeline de CI/CD que toma el código desde el repositorio, corre los tests, genera el paquete .deb, lo publica en el repositorio y lo despliega automáticamente con Ansible. Su gran aporte es enseñar una alternativa de entrega sumamente profesional basada en empaquetado nativo del sistema operativo, muy valorada en empresas que prefieren no sobrecargar su entorno con capas de contenedores para servicios simples. Su enfoque se concentra en despliegues sobre máquinas virtuales y servidores Linux tradicionales, dejando fuera arquitecturas de microservicios con Docker o Kubernetes.
- Python 3
- pytest
- unittest
- Jenkins
- GoCD
- Ansible
- Vagrant
- VirtualBox
- Paquetes Debian
- dh-virtualenv
- CI/CD
- DevOps
¿Cómo enseña?
Con proyectos
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Pipeline automatizado de CI/CD para aplicaciones Python
Tubería completa de integración y entrega continua construida con GoCD y Jenkins sobre un clúster virtual local con Vagrant, que ejecuta pruebas con pytest, compila paquetes nativos Debian (.deb) con dh-virtualenv y los despliega automáticamente en servidores mediante playbooks de Ansible.

