Jimmy Engström

NAVIGATION

TFS Buddy

Fick en I-Buddy av min fru för någon vecka sedan och hade precis i samma veva installerat TFS 2010.
Jag mindes Brian the bunny som är en fantastisk rolig implementation och beslöt mig för att göra en egen version för min I-Buddy.

Först så behöver jag kunna lyssna på events som Team Foundation Server (TFS) 2010 levererar.
Det finns en del guider som visar hur man gör men jag fick det inte riktigt att lira ändå, det har hänt lite grejer i API:et sedan 2005/2008, och de flesta guiderna jag hittade använde asmx.
Men tillslut så hittade jag ett fantastiskt bra kodexempel på hur man i kod sätter upp en WCF-tjänst för TFS här.
Jag ville hellre skapa WCF tjänsten i kod istället för att hämta inställningar från app.config för att användarna inte ska behöva tänka på alla inställningar som måste göras.

Kort om WCF Tjänsten
Första steget är att skapa en WCF-tjänst som har en metod som heter Notify.
Jag har valt att skapa en endpoint som hanterar alla olika typer av inkommande anrop istället för att göra som bl.a. Brian the bunny (och många andra) som har en endpoint för varje meddelandetyp.

Filter med Dynamic Linq
Jag ville att man skulle kunna få I-Buddyn att göra olika saker så fort den fick in notifieringen om att något ändrats men också att den skulle kunna tex blinka rött om ett bygge har misslyckats och grönt om det lyckats.
Har använt Dynamic Linq en del i andra projekt och kände att det är perfekt för att kunna få flexibla filter möjligheter.

 

 

Fördröjning
TFS 2010 har en 2 minuters väntetid mellan att saker händer tills dess att den skickar ut notifieringar och det kan ju givetvis vara vettigt i vissa fall men jag vill ju ha notifieringarna direkt och lyckligtvis finns det ett enkla sätt att ta bort väntetiden.

Via Power shell: Chris Sidi’s Blog
Via SQL script: Crispin Parker’s Blog

Lycka eller sorg?
När jag vaknade för några mornar sedan så ser jag att min i-buddy lyser rött, det är en rätt konstig känsla, kände mig fantastisk glad av att den lyste rött trots att det betydde att ett nattbygge har fallerat men bevisar att applikationen fungerar =).

Några bra resurser
TFS2010: Diagnosing Email and SOAP subscription failures

TFS Buddy finns att ladda hem på Codeplex
I-Buddy finns att köpa på Coolstuff, Kjell & Co, Pixmania

Posted in Gadgets with : tfs, leksaker, ibuddy