Pregunta

Bien, todos sabemos que la construcción diaria es el latido del corazón de un proyecto, pero ¿cuál es la mejor manera de automatizarlo?

Tenemos scripts de Perl que envuelven nuestra canalización, que incluye ClearCase, VS2005 (C++), Intel FORTRAN e Inno setup.Usamos trabajos cron en UNIX para programar la compilación y hospedamos un servidor web Apache simple para ver y monitorear la compilación.Considerándolo todo, es bastante complejo. Me gustaría saber cuál es la mejor solución disponible que utiliza la gente.

Y sí, dije que FORTRAN no se puede escapar a veces, funciona, no tiene sentido hacer un gran proyecto de reimplementación de algún código FEA probado y comprobado que simplemente funciona.

¿Fue útil?

Solución

Estamos en el proceso de implementar CC.Net.Hasta ahora parece que encajaría bastante bien con tu modelo.

Desde el primer momento, ofrece creación automatizada, seguimiento de resultados y notificación.Sin embargo, no estoy seguro de qué tan detallado es el monitoreo del progreso integrado.

Otros consejos

Uno nuevo para mí que he oído que es bastante ingenioso es Hudson - también con soporte MSBuild.

Hay muchas herramientas que se encargan específicamente de esto:

Las herramientas tienen soporte listo para usar para los tipos de compilación más comunes.Todos ellos también admiten algún tipo de proceso de compilación del tipo "ejecutar este script".

Al final, deberías utilizar las mejores herramientas de compilación (MSBuild, Ant, Maven, Make, ...) donde puedas y llenar los huecos de las herramientas más extrañas con scripts personalizados.La compilación automatizada puede simplemente invocarlos en el orden correcto.

Este es el mejor recurso que encontramos para ayudarnos a elegir una herramienta de integración continua.Hemos estado evaluando 5 o 6 herramientas en esta página.

http://confluence.public.thinkworks.org/display/CC/CI+Feature+Matrix

Usamos equipociudad - pero entonces es un desarrollo simple de C#/Java - ¿tal vez su canalización pueda realizarse a través de scripts que pueda controlar?

He tenido éxito usando Visual Build Pro.

CC.NET es muy poderoso.Lo usé y quedé muy feliz por ello.Incluso el ícono de estado en la bandeja del sistema.Es un pequeño detalle, pero ofrece una buena visión general de la "salud" del proyecto.Inmediatamente te sientes motivado a arreglar las pruebas cuando lo ves en rojo.

Ahora utilizamos una serie de scripts elaborados por nosotros mismos.Desde que escribimos Python, la compilación no existe, por lo que el único problema es ejecutar las pruebas.

Si está trabajando con Visual Studio, asegúrese de consultar Construcción de la base del equipo para ver si se adapta a su situación.

Se parece a Buck Hodges. publicación de blog sobre la versión VS 2008 También es un buen recurso.

Sé que esta es una pregunta muy antigua, pero todavía aparece en las búsquedas, por lo que alguien debería mencionarla. Jenkins - la continuación de código abierto de Hudson.

Desde el wiki de Jenkins:

Entre esas cosas, Jenkins actual se centra en los dos trabajos siguientes:

  • Construir/probar proyectos de software continuamente, al igual que CruiseControl o DamageControl.En pocas palabras, Jenkins proporciona un sistema de integración continua fácil de usar, que facilita a los desarrolladores la integración de cambios en el proyecto y facilita a los usuarios la obtención de una nueva compilación.La construcción continua y automatizada aumenta la productividad.
  • Supervisión de ejecuciones de trabajos ejecutados externamente, como trabajos cron y trabajos procmail, incluso aquellos que se ejecutan en una máquina remota.Por ejemplo, con cron, todo lo que recibe son correos electrónicos regulares que capturan el resultado, y depende de usted mirarlos con diligencia y darse cuenta cuando falla.Jenkins mantiene esos resultados y le facilita darse cuenta cuando algo anda mal.

Originalmente se creó pensando en Java, por lo que se integra bien con muchas otras herramientas Java, pero puedes usarlo con cualquier lenguaje, incluidos todos los mencionados por el OP.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top