Pregunta

Mi compañía está considerando cambiar los servidores de integración continua (no diré cuál tenemos ahora, así que no sesgaré sus respuestas de todos modos :)) Me pregunto si alguien tiene alguna recomendación. La mejor experiencia de usuario, nivel de dificultad para mantener, etc. ...

Nuestro código está todo en Java, y usamos ANT como herramienta de compilación.

¿Fue útil?

Solución

Recientemente implementé un Hudson servidor. Habiendo usado Cruise Control anteriormente, estoy muy satisfecho con Hudson y muy impresionado con su facilidad de configuración y uso. Agregar nuevos proyectos es infinitamente más fácil de lo que era con Cruise Control.

Otros consejos

Editar: Usamos Hudson ahora.

Hace un tiempo busqué un montón de estos con los siguientes requisitos:

  • código Java
  • Ant construcciones
  • Construcciones maravillosas
  • Compilaciones distribuidas
  • Integración de activación SCM
  • informes http
  • informes smtp

La Matriz de funciones de integración continua es un excelente lugar para comenzar.

Terminé seleccionando AnthillPro y lo estoy usando con éxito, simplemente rascando la superficie de lo que podemos y esperamos usarlo.

Jetbrains TeamCity se veía realmente bien cuando lo miramos. Está basado en Java, por lo que debería ser fácil de extender para su equipo, y puede hacer compilaciones distribuidas, etc. Hay una versión gratuita que puede evaluar.

He estado investigando esto también y aunque inicialmente estaba mirando CruiseControl, escuché cosas buenas sobre Hudson y decidió intentarlo. Estoy completamente impresionado por lo fácil que fue comenzar (solo descargar y ejecutar) y la configuración se realiza a través de la GUI, por lo que no hay que jugar con los archivos de configuración XML.

En cuestión de minutos había realizado mi primera compilación Ant. Ahora lo tengo funcionando como un servicio de Windows en un servidor que está disponible 24/7 tanto en la oficina como a través de VPN. La actualización es tan simple como descargar el nuevo archivo war y reiniciar.

El soporte para informes junit está listo para usar. Instalar complementos adicionales también es muy fácil y he agregado complementos para Trac, Cobertura, FindBugs y PMD. El código y la calidad de las pruebas están aumentando, ya que es muy satisfactorio ver que los gráficos de tendencias aumentan.

Ahora lo uso para administrar todas mis compilaciones para entornos de prueba y producción. Como administro varias aplicaciones web, esto me da más tiempo para dedicarme a la programación real. Sinceramente, no recuerdo cómo me las arreglé sin él.

Atlassian's Bamboo se ve bien pero no tengo ninguna experiencia con él. Parece ser similar en características a Cruise o TeamCity .

Al igual que otras personas aquí, realmente amo Hudson .

Es extremadamente fácil de instalar (es solo un archivo de guerra para implementar), configurar y usar. Además, ofrece muchas funcionalidades que no siempre están disponibles en otros sistemas (matriz de compilación, maestro y esclavo, seguridad en el servidor o nivel de proyecto ...)

El número de complementos es bastante importante ahora, y crear su propio complemento no es tan difícil ...

Para finalizar, esta aplicación evoluciona muy rápido: actualmente estamos en la versión 257 y ¡han realizado más de 100 lanzamientos desde un año!

Para los franceses, escribí una guía bastante completa para usar Hudson aquí .

Si está utilizando el software de personal Atlassian (por ejemplo, Jira, Clover, etc.) Bamboo es su camino.

Lo usamos durante un par de meses y puedo recomendarlo. Vale la pena su dinero.

Si no está completamente vendido en Hudson, una prueba de manejo con un solo clic debería cambiar de opinión.

Haga clic a continuación:

https://hudson.dev.java.net/hudson.jnlp

Esto lanzará Hudson a través de Java Web Start para una prueba de manejo. Una vez que se inicie, visite http: // localhost: 8080 / para acceder al panel. Cualquier configuración que realice con este Hudson se almacenará en ~ / .hudson, por lo que sus datos sobrevivirán a través del reinicio del proceso Hudson.

Si está utilizando herramientas bastante estándar como svn y ant / maven, debería tener una compilación y ejecución en 5 minutos. ¡Diferentes herramientas y puede llevar 20 minutos!

Vea una introducción aquí:

http://wiki.hudson-ci.org/display/HUDSON / Meet + Hudson

El bambú funciona muy bien; si tienes efectivo te lo recomiendo. El control de crucero vale su precio; Nunca pude lograr que descubriera de manera confiable que los cambios de origen se hicieron y compilaron, ni pude lograr que se compilara manualmente. La interfaz y la configuración son terriblemente complejas.

Utilizamos Control de crucero . Tiene todas las características que queremos y fue bastante fácil de configurar. La integración con ANT y SVN está bien.

Con: de vez en cuando tenemos que reiniciar el proceso o la máquina, ya que deja de enviar mensajes para la compilación nocturna. No estoy seguro de qué se trata, pero es molesto.

como de costumbre con java world, existe el mundo de código abierto y el mundo comercial.

Ya hemos visto una cobertura bastante buena de las diversas ofertas.

Hudson: No conozco ninguna otra oferta de servidor Java que sea tan fácil de evaluar. java -jar hudson.war: ¿qué tan fácil puede ser eso? NO solo puede usarlo en Windows, puede usarlo en todas las plataformas Java habituales. Ant, Maven y una gran cantidad de otras plataformas de compilación son compatibles.

Lo mejor de Hudson es la capacidad del complemento. Se está desarrollando casi continuamente. Solicita una función y no tardará mucho en hacerse.

Generalmente no me gusta sonar como un fanboy, pero esta aplicación / desarrollador / comunidad me impresiona.

BR,
~ A

Solo una palabra en la Matriz de funciones de integración continua : no fue recopilada por la gente de CruiseControl, fue comenzó en CodeHaus por el proyecto DamageControl y se trasladó a la wiki de CruiseControl cuando DamageControl entró en hibernación. La información es mantenida en gran parte por los propietarios del proyecto / producto o por sus fanáticos.

Estoy contento con bamboo . Miré una serie de soluciones gratuitas antes de decidirse por ella.

Creo que seré el primero en mencionar Luntbuild . Además del nombre poco atractivo, es un excelente servidor de CI.

  • Súper fácil de configurar.
  • Interfaz de usuario web para crear / administrar sus proyectos y usuarios
  • Soporte para MUCHOS sistemas de control de versiones (lo he usado con CVS, SVN y StarTeam)
  • API remota bastante elegante
  • Granularidad relativamente alta para el control de acceso (para que pueda dar a los clientes acceso solo a sus compilaciones y no a las compilaciones de sus clientes)
  • y mucho, mucho más.

Echa un vistazo a la demostración en vivo . cuenta / contraseña demo / demo

Nota: La demostración en vivo tiene algunos lanzamientos.

Hemos utilizado el Control de crucero con resultados decentes. Desde entonces, hemos comenzado a usar Maven para la herramienta de compilación en todos nuestros proyectos. Con eso vino la mudanza a Hudson para CI, que es muy agradable. Si cree que mudarse a Maven podría ser en su futuro, lo recomendaría. Creo que Hudson incluso se puede usar para llamar a tareas Ant, aunque podría estar en orden un contenedor Maven.

http://hudson-ci.org/

Thoughtworks Cruise es la descendencia comercial de Proyecto de código abierto CruiseControl . Se ve muy bien, muchas características, compilaciones distribuidas, etc. No sé cuál es su capacidad de ampliación.

Una organización que ejecuto (openqa.org), en un momento u otro, ha utilizado casi todos ellos. En términos de configuración fácil, vaya con TeamCity o Bamboo. Pero en términos de confiabilidad general, es posible que desee mirar a Hudson. realmente me gusta JetBrains, pero descubrimos que TeamCity entra en estados extraños después de un tiempo, lo que hace que nuestras compilaciones sean poco confiables. ¡Qué pena, ya que amo IDEA!

Hemos estado utilizando Automated Build Studio y estamos muy contentos con él. Es una aplicación de Windows, por lo que está atascado en un servidor de compilación de Windows, pero en el lado positivo es muy fácil de configurar, mantener y usar. Construye su proceso a partir de componentes mediante apuntar y hacer clic, y puede usar secuencias de comandos si ninguno de los componentes satisface sus necesidades.

De los pocos que he usado, Buildbot se destaca como el más potente y flexible. Sin embargo, no es el más bonito si eso te importa.

He administrado Bamboo y Hudson, y recomendaría Hudson.

Ambos son geniales, pero Hudson tiene un mejor soporte de informes, por ejemplo, publicar sus informes de cobertura, etc. es mucho más fácil dentro de Hudson.

Es probable que esto cambie en el futuro cercano, pero a pesar de la integración de Bamboo con JIRA, etc. y sus estadísticas, Hudson, por su facilidad de uso y soporte de terceros, es mejor independientemente de la cantidad en dólares (es gratis, Bamboo no lo es).

También usamos Hudson y si no fuera la recesión, probablemente usaríamos Bamboo y la mayoría de los productos Atlassian (Bamboo, Crisol, Confluence) junto con JIRA.

Utilizo Continuum para mi servidor de integración continua. No hay otra razón que no sea que iba a contratar a un gerente de desarrollo que había utilizado en su última asignación, por lo que parecía tener sentido elegir algo con lo que al menos uno de nosotros tenía experiencia.

Antes de elegir Continuum, un desarrollador junior pasó dos semanas tratando de poner en marcha CruiseControl. Sin embargo, conseguimos que Continuum 1.0 se ejecute por primera vez.

Estamos utilizando Zutubi Pulse y funciona muy bien para nosotros. Es muy fácil de usar y tiene muchas características avanzadas.

Utilizamos StarTeam y entre Hudson y CruiseControl.NET, CC.NET tiene algunos errores al integrarse con StarTeam. No parece reconocer el espacio de trabajo que definimos en los archivos de configuración.

El año pasado, en una conferencia en los Estados Unidos, escuché por primera vez sobre Cruise Control .net en una presentación de 1 hora, en mi camino a casa en el llano decidí implementar un pequeño POC para nuestra empresa y lo logré con éxito en menos de 5 horas (incluyendo todo el aprendizaje que podría haber hecho).

Lo uso desde entonces y debo decir que estoy muy satisfecho con los resultados y la facilidad de operación, Hay algunos inconvenientes (p. Ej., Falta de distribución de tareas en la escala de servidores, aunque puede supervisar varios servidores) Encontré un error en una de las implementaciones y, dado que es de código abierto, podría haberlo solucionado muy rápidamente (gran ventaja). Creé un pequeño [proyecto] [1] en codeplex para contener mis correcciones antes de contribuir con ellas. comunidad como un check in. Le recomiendo que mire esta plataforma, también sería bueno si pudiera decir lo que realmente necesita.

[1]: http://www.codeplex.com/DavidovitzCCE proyecto

Consulte nuestro Parabuild . En comparación con las herramientas gratuitas, es muy fácil de configurar y su sobrecarga de mantenimiento es cercana a cero. no es gratis pero obtienes lo que pagas.

¿Por qué no utiliza un servicio de CI alojado? No tiene que preocuparse por el mantenimiento, los costos, etc.

MikeCI es un servicio de CI alojado que aloja sus compilaciones en Amazon EC2 y por solo $ 10 por mes es un mucho más barato que mantener su propio servidor CI.

Pruébalo.

Considere un servicio de CI alojado gratuito en fazend.com . Es compatible con ant .

CruiseControl.NET es mucho más efectivo en los cuadros de Windows que el original basado en Java. Especialmente cuando el servidor de compilación dedicado aún no está disponible.

Es posible que desee verlo también

http://www.thoughtworks-studios.com/solutions/deployment-management texto del enlace

La solución de administración de implementación de ThoughtWorks combina el poder de Twist (pruebas ágiles) con Go (administración de versiones).

  • Twist captura los requisitos para ser probado directamente de usuarios comerciales
    y luego apoya su automatización como pruebas a largo plazo que evolucionan con el solicitud.
  • Go ayuda al desarrollo y Lanzamiento del modelo de equipos de operaciones de TI
    procesa e implementa software
    repetible y confiable.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top