Vorrei elencare in questo post le nuove funzionalità che saranno aggiunte in VSTS 2010 alla Team Build.
Windows Workflow Foundation
La prima è sicuramente l’integrazione con Windows Workflow Foundation. Team Build avrà ora un designer, basato su WF, che permetterà di “costruire” in maniera totalmente visuale il processo di build, con una serie di Activites ad identificare le azioni di MSBuild e Team Build.
Build Templates
Direttamente correlata a questa c’è la possibilità di salvare dei template di build. Una volta definito il nostro processo di build, magari molto complicato e con parecchie interazioni, è possibile salvarlo come template da riutilizzare sia come build successive, sia per ulteriori customizzazioni “one time only”.
Build Controllers
Chi si è mai trovato ad avere più Build Agent tra cui scegliere (magari legato a delle personalizzazioni, oppure semplicemente con la coda piu corta)? Questo problema è stato superato con l’introduzione dei Build Controllers, che sostituiscono in toto la gestione dei Build Agents da Team Explorer.
Tags
Inoltre, vengono introdotti i Tags, per rendere ancora più granulare la gestione dei risultati di build mediante delle stringhe che identificano le funzionalità di ogni singolo Build Agent. Ad esempio, abbiamo un Build Agent con tag “IA64” (tutti compiliamo quotidianamente per Itanium vero? :D), sappiamo che quel Build Agent è configurato esclusivamente per Intel Architecture 64.
Build Process Scalability
Scalabilità del processo di build: con Team Build 2010 possiamo decidere di assegnare task a più di un Build Agent. Ad esempio, possiamo compilare in parallelo sia codice debug che release. Tutto ciò è possibile grazie all’uso di Windows Workflow Foundation come motore di workflow interno.
Gated Ckeck-ins e Private Builds
Si tratta della possibilità di fare delle build degli shelvesets, in modo tale da non coinvolgere in maniera troppo ampia il fallimento di una build durante scenari di Continuous Integration. La build dello shelveset, se correttamente completata, viene inserita nella build principale, e lo shelveset subisce il processo di check-in.
La Private Build è simile, con la differenza che il codice dello shelveset non viene inserito nel source control. E’ utile in scenari di test per evitare di dover fare una build su macchina locale.
Maggior controllo sulle build eliminate
Quando, ad oggi, eliminiamo una build, cancelliamo definitivamente le sue tracce. Ora è possibile recuperare i dati tramite delle retention policy.
Integrazione con WiX, VSTS for Database Professionals e MSTest
Si possono compilare installers WiX, progetti DBPro ed eseguire test della versione VSTS for Testers in build in maniera molto più rapida senza customizzazione del Build Agent.
Reports dettagliati delle build
Si avranno, al termine della compilazione, dei reports dettagliati dei risultati delle build, con anche la possibilità di applicare retention policy custom, ecc.
Le informazioni sono state selezionate dall’ottimo libro “Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build”, che consiglio caldamente :)