Servidor de compilación y prueba automatizado independiente del lenguaje para múltiples proyectos [cerrado]

StackOverflow https://stackoverflow.com/questions/1200721

Pregunta

Para facilitar nuestras pruebas de lanzamiento, estamos buscando un sistema para construir y (automáticamente) probar nuestros proyectos de software en una variedad de arquitecturas. Nuestras limitaciones son:

  1. El código para compilar está escrito en varios idiomas, incluidos Python, Java y C.
  2. Tenemos varias arquitecturas de implementación distintas.
  3. Tenemos múltiples proyectos, que nos gustaría construir y probar de forma independiente.
  4. Nuestro sistema de control de fuente es Subversion, y el sistema debería integrarse con eso.
  5. La solución idealmente debería ser de código abierto.

Hemos examinado:

  • Artifactory + Continuo : Agradable en algunos aspectos, pero está muy centrado en Java, con soporte limitado o inexistente de Python.

  • Buildbot : esto nos brinda casi toda la funcionalidad que necesitamos, excepto que no es compatible múltiples proyectos, lo que es un factor decisivo para nosotros.

¿Qué recomendarías? ¿Qué usas?

¿Fue útil?

Solución

¿Has mirado en Hudson ? Lo he usado en proyectos .Net con mucho éxito a pesar de que es una herramienta centrada en Java. Es compatible con la subversión y tiene una comunidad de complementos activa y diversa que le permite trabajar con muchos idiomas diferentes. Es de código abierto y se ejecuta en muchas plataformas. Me pareció relativamente fácil de configurar y administrar.

Otros consejos

Eche un vistazo a TeamCity . Funciona como un encanto para nosotros.

Desde que me alejé del buildbot, he estado usando el control de crucero y he estado contento con él hasta cierto punto. Mis proyectos actuales consisten en construir c ++ & amp; ruby (con algunas extensiones c) a múltiples arquitecturas y y la única queja es que la mayoría de las características requieren hormiga. Y actualmente, una sola instancia de cc está construyendo aproximadamente 40 proyectos diferentes. Las fases de construcción que tenemos consisten en ejecutar pruebas unitarias, algunas pruebas funcionales, obtener cobertura de código y hacer un informe de ellas, actualizar la base de datos de paquetes, la integración de IRC, la creación de paquetes de software y el repositorio actualización (debian)

La única queja es que la mayoría de las características más sofisticadas requerirían que (al menos cuando esté dentro del circuito de compilación cc) la compilación esté ocurriendo con la hormiga.

También he evaluado a hudson, parece ser algo más flexible que el control de crucero, pero personalmente no me gusta su interfaz de configuración.

Soy desarrollador en CruiseControl y trabajo para Urbancode que hace AnthillPro , así puedo hablar de las fortalezas de esos. También soy uno de los organizadores de CITCON , así que estoy bastante familiarizado con casi todas las ofertas en el espacio .

CruiseControl o Hudson son herramientas de CI de código abierto bastante buenas. Encuentro que CC es realmente fácil de personalizar y ampliar y hay muchos complementos que se han agregado durante sus 8 años de vida útil. Hudson es más nuevo y más fácil para la mayoría de las personas para comenzar; es muy simple ejecutar su primer proyecto utilizando la configuración de la GUI, mientras que CC requiere de mucking en los archivos XML. Hudson también tiene una comunidad de complementos activa y está agregando rápidamente nuevas capacidades.

Sin embargo, dependiendo de la complejidad y los requisitos de sus proyectos, puede encontrar una herramienta comercial como AnthillPro que se ajuste mejor. Las razones por las cuales la actualización de CC o Hudson a AHP varían de una compañía a otra, pero algunas respuestas típicas incluyen la capacidad de configurar implementaciones de autoservicio con control de acceso por entorno, el deseo de encadenar múltiples compilaciones / flujos de trabajo, la gestión de dependencias integrada, la repositorio de artefactos, o la capacidad de reunir datos de un conjunto de herramientas diferentes & amp; se desarrolla a lo largo del ciclo de vida.

No todos necesitan esas capacidades, pero las personas que encuentran que la actualización vale la pena.

¿Por qué no echar un vistazo también a CI Factory .

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