Per me, ottenendo .NET 4.0 e Cruise Control .NET andare scesero a questo:
1) Evitare di 64 bit MSBuild come la peste ... hanno un lavoro a 32 bit costruire la prima .
2) Specificare semplicemente il percorso completo del logger, non la classe tipica, il formato di assemblaggio .
3) Distribuire il pacchetto di destinazione dal disco VS 2010. \ WCU \ MTPack \ NetFx_DTP.msi EXTUI = 1/log install.log
4) Verificare sempre che MSBuild funzioni prima dalla riga di comando.
5) Creare una configurazione nel file della soluzione e includere solo i progetti che si desidera costruire
<msbuild>
<!-- WARNING: You must copy the files from C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications to the same path on your build server -->
<executable>C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable>
<workingDirectory>C:\builds\SOLUTIONFOLDER\trunk\</workingDirectory>
<projectFile>C:\builds\SOLUTIONFOLDER\trunk\SOLUTIONNAME.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=CruiseControl /v:diag</buildArgs>
<targets>Build</targets>
<timeout>15</timeout>
<logger>C:\CruiseControl\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger>
</msbuild>
Ora, se Microsoft avrebbe lasciato solo ci installiamo facilmente MSTest sui nostri server costruire ... Le persone sono state accattonaggio per 5 anni, come può Microsoft apprendere così poco sui test?
Buona fortuna a tutti.
fonte
2010-04-29 14:49:20
+1 per il punto su MSTest. Abbiamo dovuto installare VS sul nostro server di build e questo è semplicemente sciocco. Suppongo sia perché vogliono che usiamo il server TFS Build, ma è talmente immaturo che CCNet è la scelta migliore. – John