2009-02-24 10 views
26

Trabajo para una tienda .net que busca integrar un servidor de CI. Por lo que he visto, Hudson parece ser la opción más popular. Teniendo en cuenta que somos una tienda exclusiva de .net, ¿presentará Hudson algún obstáculo que CC.NET no tenga?CI: Hudson con .Net vs CruiseControl.Net

+0

considerar la adición de .NET como etiqueta para su posterior – myroslav

+1

Ver también esta CC vs Hudson pregunta: http://stackoverflow.com/questions/604385; a pesar de los "proyectos de Java" en el título, ninguno de ellos es realmente específico de Java. Acerca de Hudson y .NET, vea esta respuesta: http://stackoverflow.com/questions/616149/how-and-why-do-i-set-up-ac-build-machine/616230#616230 Para resumir: vaya con Hudson. :) – Jonik

Respuesta

27

No puedo pensar en una sola cosa que Hudson no haya podido hacer para nuestro desarrollo de C#, incluso con pruebas basadas en MSTest, ahora puede ejecutar y realizar un gráfico de tendencias con the new plugin (solo funciona si está probando UN ensamblaje) o my method que funciona en varios conjuntos.

Supongo que lo único que sería bueno sería generar datos de cobertura de código e informar sobre eso, no estoy seguro si CC.net lo hace.

Además, Hudson parece tener un apoyo de la comunidad mucho más fuerte. Nunca escuché que alguien escogiera CC.net por Hudson si podían elegir.

lo usamos para

  • desplegar servicios de Windows
  • desplegar servicios Web
  • Run MSTests & pantalla toda la información que cualquier prueba junit
  • No pierda de vista Bajo, Medio, altas tareas
  • advertencias y errores trendgraph

Estas cosas pueden no ser nada nuevo para Hudson, pero sentí la necesidad de volver a enfatizar que Hudson puede manejar esto con un proyecto .net, no hay problema.

Estas son algunas de las cosas construida en .NET que soporta Hudson

Además, Dios no lo quiera que esté utilizando fuente visual seguro, it supports that as well. Te recomiendo que eches un vistazo a Redsolo's article on building .net projects using Hudson

+1

Bueno, ahora has conocido a alguien que prefiere y elige CC.NET. Soy uno. La comunidad de CC.NET es excelente, no conozco la comunidad de Hudson, pero si es mucho mejor, entonces genial para ti. Encontré la necesidad de aprender Java para mis personalizaciones. Mi mayor impedimento – Alex

+0

No es necesario que aprenda Java para agregar pasos de compilación. He escrito los archivos por lotes como se muestra en el enlace anterior. usted puede agregar ejecutables también. ¿Cómo se compara el soporte de plugin incorporado a esto? http://wiki.hudson-ci.org/display/HUDSON/Plugins –

+0

Se compara favorablemente, la mayor parte de la funcionalidad que es justo a CC.NET, no hay necesidad de hacer un trabajo extra. Y qué no es lo que no necesito. No estoy criticando a Hudson, parece bastante bueno. Yo diría que comparan varían favorablemente. Sin embargo, puedo cambiar los fundamentos, no solo agregar un complemento – Alex

0

No sé casi nada sobre Hudson. Voy a decir que desde CC.NET se basa en .NET, que tiende a tener un montón de built-in y tareas aportados por la comunidad e informes relacionados con el ecosistema .NET:

MSBuild Visual Studio NCover NUnit FxCop etc etc etc

por lo tanto, si utiliza estas herramientas, usted debe comprobar cuidadosamente qué tan bien están soportados "out-of-the-box" por Hudson.Además, si termina teniendo que escribir complementos personalizados (he hecho algunos para CCNET), generalmente es ventajoso poder usar el lenguaje de desarrollo y el IDE que usa para el desarrollo "normal".

+0

Wow, ¿hablas en serio? Hudson es compatible con todo esto de forma inmediata mediante complementos, excepto NCover, y creo que uno ya está en proceso. De todos modos, puedes desarrollar pasos de compilación personalizados como ejecutables o simplemente ejecutar comandos dos, no hay necesidad de conocer java en absoluto. –

+4

¿Por qué "eres serio?"Jeremy dice que no conoce a Hudson, él no dice que esas cosas no están en Hudson. ¿Qué estás cuestionando? – Alex

+1

malinterpretó el mensaje, no puedo editar el comentario –

1

Hudson es mucho más fácil para los principiantes. Lo usamos para autocompilar y empaquetar dlls y expansiones de C++ Builder. ¡Piénsalo! No es Java ni C#.

+0

bueno, sí, incluso podrías configurar el hudson para compilar usando jslint, heh –

0

He comprobado el apoyo Hudson para la prueba xUnit marcos un breve resumen se incluye a continuación:

  • MBUnit/Gallio: Hay un plugin pero el desarrollo no parece ser demasiado activo ni la comunidad que utilizan eso. Por ejemplo, solo hay un issue agregado. Se informó que se informó en abril y aún no se ha tocado (agosto). (Equipo de Galio es compatible con el plugin para CC.Net, su tiempo de respuesta se ve mucho mejor)
  • MSTest: tiene el mismo problema. Solo tiene dos problemas en el sistema de seguimiento de problemas y un retraso promedio en la respuesta es de 6 meses. (Parece que CC.Net tiene soporte nativo para mstest pero requiere un poco de configuración)
  • nUnit: El soporte para nunit en Hudson parece ser bastante buena. El equipo de desarrollo es mucho más receptivo y también tiene más errores reportados (8 actualmente).

así que creo que voy a dar a la CC.Net intentarlo.

-1

No puedo entender por qué un desarrollador .Net usaría una herramienta de Java CI. CruiseControl es una herramienta centrada en Java, un pozo. Es por eso que se creó CruiseControl.NET. .NET centric continuous-integration.

Si desea configurar un sistema altamente integrado que va a escribir sus propios plug-ins para el sistema para que haga exactamente lo que quiere.

p. Ej. Reúna toda la información de la versión que le interesa y luego escriba los archivos AssemblyInfo.cs con las versiones en ellos.

Cuestiones relacionadas