Uso TeamCity che a sua volta richiama msbuild (.NET 4). Ho uno strano problema in quanto dopo che una build è completa (e non sembra importare se è stata una build riuscita o meno), msbuild.exe rimane aperto e blocca uno dei file, il che significa che ogni volta che TeamCity prova per cancellare la sua directory di lavoro, fallisce e non può continuare.
Succede quasi ogni volta.
Sono davvero perso su questo, quindi cercherò di fornire il maggior numero di dettagli possibile.
- Il server è un Intel Core i7, 2 GB di ram, con Windows Server 2008 standard a 64 bit SP2.
- In TeamCity, il runner msbuild è configurato con il
/mparametro della riga di comando (che significa utilizzare più core) - Il file in questione è SEMPRE la stessa DLL esterna a cui si fa riferimento in uno dei progetti .NET, nel percorso
External Tools\Telerik\Telerik.Reporting.Dll. (Ci sono molti altri file .DLL inclusi nella directoryExternal Toolsin una struttura di percorso simile che non causano mai questo problema). Attualmente questo è con la versione di prova dei rapporti Telerik, nel caso in cui ciò faccia la differenza. - Quando si verifica il problema, ci sono sempre diversi
msbuild.exe *32processi elencati in Task manager: credo che ce ne siano 7. Utilizzando Process Explorer, sembrano tutti processi di primo livello (nessun genitore). Usano tutti da 20-50 MB di RAM e 0,0% di CPU. - Se aspetto 1-3 minuti, i processi msbuild.exe si chiudono da soli e TeamCity può aggiornare correttamente la directory di lavoro.
- Se interrompo manualmente i processi di msbuild, l'aggiornamento di TeamCity funzionerà di nuovo immediatamente.
- I servizi di indicizzazione sono disattivati in Windows (anche se i due punti precedenti confermano praticamente che è msbuild.exe a causare il problema).
- Non esistono proprietà speciali su Telerik.reporting.dll. L'unica proprietà SVN è
svn:mime-type = application/octet-stream
Qualcuno l'ha incontrato prima?
/m /nr:false, correrò per alcune build e vedrò come va. Grazie