continuous integration - proceso - Integración continua-Buenas prácticas
roles en integracion continua (5)
Últimamente, he estado pensando mucho en el CI y en las compilaciones automáticas y me interesa saber si existen las mejores prácticas para configurar y mantener un entorno de integración continua. ¿Mantiene todos los archivos relacionados con su CI registrados con la fuente de su proyecto? ¿Cómo normalmente estructurarías tu CI y construirás archivos? ¡Cualquier consejo es bienvenido!
- Comience con una construcción de un paso. Si no tienes eso, no puedes tener ningún IC razonable
- Si no está en control de código fuente, no existe
- Si la configuración y el mantenimiento de su CI exceden el esfuerzo de configurar una estación de trabajo de desarrollador, entonces depende demasiado de su IDE o la estructura de su proyecto es demasiado complicada. Considera eso como una oportunidad de refactorización.
- No necesitas nada lujoso para hacer CI. Ni siquiera necesitas saber qué es hacerlo. Escribí sobre mi experiencia anterior aquí , cuando implementé un IC ingenuo antes de escuchar el término CI.
Kohsuke Kawaguchi, el fundador de la popular herramienta Jenkins / Hudson CI, acaba de publicar un documento que le puede resultar útil. 7 maneras de optimizar a Jenkins
Si su script de compilación comienza a crecer, puede dividirlo e incluir las partes relevantes. Esto hace que el mantenimiento y la legibilidad sean mejores.
Mi otro consejo sería diferente a la programación tradicional: al hacer una secuencia de comandos de compilación, haga uso de cantidades de comentarios liberales.
Si todavía no lo has hecho, echa un vistazo al libro de integración continua de la serie Martin Fowler, de Duvall / Matyas / Glover. Cubre todas las preguntas que hace en profundidad con ejemplos sólidos.
También está la "Pragmatic Project Automation" de la Serie Pragmática .
Por supuesto, todos los archivos requeridos para compilar deben estar registrados.
He usado CI con Java, por lo que significa un Ant build.xml y Cruise Control, Team City o Hudson. Es posible que el build.xml sea genérico si mantiene una estructura de directorios consistente para sus proyectos.