July 2013 Blog Posts

Recentemente Microsoft ha rilasciato una preview (sfortunatamente non go-live) di InRelease per Team Foundation Server 2013, la soluzione di Release Management acquisita da InCycle.

Il setup per essere completato con successo deve essere eseguito col seguente comando da un prompt amministrativo, altrimenti fallira’ sempre e comunque:

msiexec –I InCycle_InReleasePreview.msi

[ir0%255B2%255D.png]

Inoltre nel caso ci siano problemi successivi all’installazione, e’ bene avere sottomano oltre ai log nell’Event Viewer di IIS (InRelease installa un web site e un application pool a 32 bit, che puo’ essere un problema per certi ambienti) la cartella dei log, sotto C:\ProgramData (o equivalente).

Sono molto esplicativi, uno per ogni servizio.

Infine, qui si trova una pagina di supporto con i problemi post-installazione piu’ comuni e le soluzioni/

Come Gian Maria ha anticipato, in Visual Studio 2013 è stato introdotto il mapping “un progetto un workspace” di default.

Lo troviamo immediatamente a disposizione quando connettiamo a un Team Project, in quanto è il primo tip che vi viene proposto:

[bp1%255B9%255D.png]

Quindi lo andremo a configurare:

[bp2%255B3%255D.png]

bp3

Il miglioramento è notevole, in quanto spinge su una best practice nota che impedisce la creazione di un unico, monolitico workspace che nove volte su dieci porta poi problemi.

Qualche giorno fa il team di Team Foundation Service ha rilasciato lo Sprint 50, ed una delle feature rilasciate e’ il Backlog Mapping.

Niente di troppo grande o difficile: se si crea un Portfolio da zero con Team Foundation Service, sicuramente si avra’ una lista piatta di feature e una lista piatta di PBI/User Story.

Con il Backlog Mapping (che graficamente e’ solo un menu’ a destra) si puo’ fare drag&drop della PBI che si vuole essere figlia di una certa Feature, e sara’ automaticamente linkato.

E’ una feature semplice eppure molto efficace, che combina una semplice UX con un risultato tangibile.

Sebbene sia documentato su MSDN, volevo mostrare un ulteriore modo di aggiungere livelli sopra le Feature (Theme ad esempio), che non utilizzi witadmin e utilizzando il buon vecchio Visual Studio 2012 con i suoi Power Tools, limitando quindi le modifiche ai file XML al minimo essenziale.

Ovviamente questo non è possibile con Team Foundation Service – il quale non prevede customizzazioni del genere per ovvi motivi.

Prima di tutto, scarichiamo il Process Template a cui vogliamo aggiungere livelli dal nostro server.

Aprendolo con il Process Template Editor, notiamo subito che le tab Agile e Common Process Settings sono vuote!

image

Il motivo è dato dal fatto che Microsoft ha cambiato la struttura del Process Settings, unendo tutto in un file ProcessConfiguration.xml. Non è un problema comunque, lo sistemeremo.

Quindi, copiamo e incolliamo il Work Item Type Feature.xml, rinominandolo in Themes.xml, e ovviamente modificandone il nome nel WORKITEMTYPE:

image

Importiamolo nel Process Template:

image

Ora possiamo creare una nuova Category usando l’IDE, ed aggiungendo il Theme di cui sopra. Usiamo Custom.ThemeCategory come Reference Name, o qualunque cosa possa andare bene per identificare la Category custom:

image

Torniamo al file Theme.xml. Dobbiamo modificare la Implementation Hierarchy. Questo è molto importante per poter selezionare le Feature come work item figli.

image

Ora, cancelliamo qualunque cosa non sia ProcessConfiguration.xml nella cartella \WorkItem Tracking\Process, e correggiamo come di seguito il file WorkItems.xml dentro \WorkItem Tracking:

image

Creiamo la gerarchia, aggiungendo un nodo alla sezione PortfolioBacklogs del ProcessConfiguration.xml.

image

E’ sufficiente copiare ed incollare quello della Feature, ma è poi molto importante aggiungere parent=”Custom.ThemeCategory” alla Feature preesistente, in modo da tenere la gerarchia lineare ed evitare questo errore in fase di creazione del Team Project: “The following element contains an error: PortfolioBacklogs. TF401096: This element defines the hierarchy relationship between portfolio backlogs and must define a linear hierarchy from bottom to top. The specified hierarchy is invalid.”

image

Inoltre aggiungiamo un nodo alla sezione WorkItemColor, ricordando di seguire il pattern di colori. Qualunque colore andrà bene, ma deve rimanere nella forma di quelli di default altrimenti il Process Template non verrà uploadato.

image

Finito! Ora si può uploadare il Process Template e si otterrà un nuovo livello Themes al di sopra delle Feature, con tutte le funzionalità associate (board, etc.)

Una delle ragioni per usare Team Foundation Service e altri servizi cloud e’ non doversi preoccupare degli update tecnologici, visto che sono eseguiti dal provider.

Team Foundation Service non fa eccezione e oggi, con la Preview release di Visual Studio 2013 e Windows 8.1, gli Hosted Build Server sono upgradati a Windows 8.1!

Ma non si potranno selezionare immediatamente in Visual Studio. Si dovra’ andare nella propria istanza di Team Foundation Service ed abilitarli per il progetto richiesto:

image

Dopo averlo fatto potremo selezionare il Build Controller:

image

Stessa cosa nella Build Definition stessa:

image