2009-02-24 12 views
26

Lavoro per un negozio .net che cerca di integrare un server CI. Da quello che ho visto, Hudson sembra essere la scelta più popolare. Considerando che siamo un solo negozio .net, Hudson presenterà eventuali ostacoli che CC.NET non vorrà?CI: Hudson con .Net vs CruiseControl.Net

+0

Considera l'aggiunta di .net come tag al tuo post – myroslav

+1

Vedi anche questa domanda CC vs Hudson: http://stackoverflow.com/questions/604385; nonostante il "per progetti Java" nel titolo, nessuno di questi è realmente specifico di Java. Informazioni su Hudson e .NET, vedere questa risposta: http://stackoverflow.com/questions/616149/how-and-why-do-i-set-up-ac-build-machine/616230#616230 Per riassumere: andare con Hudson. :) – Jonik

risposta

27

Non riesco a pensare a una singola cosa che Hudson non è stata in grado di fare per il nostro sviluppo C#, anche con i test basati su MSTest, ora puoi eseguirli con il trendgrafico con the new plugin (funziona solo se stai collaudando UN assemblaggio) o my method che funziona su più assiemi.

Suppongo che l'unica cosa che sarebbe bella, sarebbe quella di generare dati di copertura del codice e riferire in merito, non sono sicuro se CC.net lo fa.

Inoltre, Hudson sembra avere un supporto comunitario molto più forte. Non ho mai sentito parlare di qualcuno che ha scelto CC.net su Hudson se avesse avuto la possibilità.

lo usiamo per

  • distribuire Windows servizi
  • implementare servizi web
  • Run MSTests & visualizzazione tante informazioni come eventuali test JUnit
  • tenere traccia di basso, Med, Alto compiti
  • avvisi ed errori trendgraph

Queste cose non possono essere nulla di nuovo per Hudson, ma ho sentito il bisogno di enfatizzare che Hudson può gestirlo con un progetto .net, nessun problema.

Ecco alcune delle costruito in roba NET che supporta Hudson

Inoltre, Dio non voglia che si sta utilizzando fonte visiva sicura, it supports that as well. Ti consiglio di dare un'occhiata a Redsolo's article on building .net projects using Hudson

+1

Bene, ora hai incontrato qualcuno che preferisce e ha scelto CC.NET. Io sono uno. La comunità di CC.NET è fantastica, non conosco la community di Hudson, ma se è molto meglio, allora Great for you. Ho trovato la necessità di imparare Java per le mie personalizzazioni il mio principale impedimento – Alex

+0

Non hai bisogno di imparare java per aggiungere passi di costruzione, ho scritto file batch come mostrato nel mio link sopra. puoi aggiungere anche eseguibili. In che modo il supporto plug-in integrato è paragonabile a questo? http://wiki.hudson-ci.org/display/HUDSON/Plugins –

+0

Confronta con favore, la maggior parte di queste funzionalità è solo in CC.NET, non c'è bisogno di fare lavoro extra. E cosa non è che non ho bisogno di. Non sto sbagliando su Hudson, sembra piuttosto buono. Direi che il confronto varia in modo favorevole. Posso però cambiare i fondamenti, non solo aggiungere un plugin – Alex

0

Non so quasi nulla di Hudson. Devo dire che da quando CC.NET si basa su .NET, si tende ad avere un sacco di built-in e le attività di comunità contribuito e le comunicazioni concernenti l'ecosistema .NET:

MSBuild Visual Studio NCover NUnit FxCop ecc. Ecc.

Quindi, se si utilizzano questi strumenti, è necessario verificare attentamente quanto siano supportati "out-of-the-box" di Hudson.Inoltre, se si finisce per dover scrivere plugin personalizzati (ne ho fatti alcuni per CCNET), di solito è vantaggioso poter usare il linguaggio di sviluppo e l'IDE che si usano per lo sviluppo "normale".

+0

Wow, sei serio? Hudson supporta tutto questo fuori dalla scatola tramite plugin eccetto NCover e penso che uno sia in lavorazione. In ogni caso puoi sviluppare passi personalizzati come eseguibili o semplicemente eseguire comandi dos, non è necessario conoscere java. –

+4

Perché "Sei serio?"Jeremy dice che non conosce Hudson, non sta dicendo che roba non è in Hudson." Cosa stai chiedendo? – Alex

+1

ha letto male il messaggio, non posso modificare il commento –

1

Hudson è molto più facile per i principianti. Lo usiamo per auto-compilare e comprimere DLL ed exe di C++ Builder. Pensaci! Non è Java né C#.

+0

bello, sì, potresti anche impostare hudson per costruire usando jslint, eh –

0

Ho controllato il supporto Hudson per il test xUnit quadri un breve riassunto è incluso qui sotto:

  • MBUnit/Gallio: C'è un plugin ma lo sviluppo non sembra essere troppo attivo né la comunità che utilizzano esso. Ad esempio, è stato aggiunto solo uno issue. È stato segnalato in aprile e non è ancora stato toccato (agosto). (Il team di Gallio supporta il plugin per CC.Net, il loro tempo di risposta sembra molto migliore)
  • MSTest: presenta lo stesso problema. Ha solo due problemi nel sistema di tracciamento dei problemi e un ritardo medio della risposta è di 6 mesi. (Sembra CC.Net ha il supporto nativo per mstest ma richiede qualche configurazione)
  • nUnit: Il supporto per nunit in hudson sembra essere abbastanza buono. Il team di sviluppo è molto più reattivo e ha anche più bug segnalati (8 al momento).

Quindi penso che ho intenzione di provare CC.Net.

-1

Non riesco a capire perché uno sviluppatore .Net possa utilizzare uno strumento di configurazione Java. CruiseControl è un pozzo Java-centrico. Ecco perché è stato creato CruiseControl.NET. Integrazione continua centrata su .NET.

Se si desidera configurare un sistema strettamente integrato, si scriveranno i propri plug-in per il sistema per farlo fare esattamente ciò che si desidera.

ad es. Raccogli tutte le informazioni sulla versione che ti interessano e quindi scrivi i file AssemblyInfo.cs con le versioni al loro interno.

Problemi correlati