October 2009 - Posts
Team Foundation Server, TFS skraćeno, je jako čudna zverka. Prvi put se pojavio 2005 godine kao deo Visual Studio Team System-a, sada je u svojoj trećoj iteraciji, i u njoj donosi neke novine koje su dugo očekivane. Jedna od tih je i takozvana “basic” instalacija, koju ću danas pokriti.
Šta je “basic” instalacija?
Team Foundation Server u verzijama koje su prethodile 2010 (2005 i trebnutna verzija, 2008) su instalaciju i konfiguraciju spajale u jedan korak. To je značilo da se TFS nije mogao instalirati ukoliko se svi preduslovi ne zadovolje. Ti preduslovi su bili donekle obimni, pošto se TFS oslanjao na SQL Server Reporting servise, SharePoint server ili servise (u svakom slučaju, master site je morao biti instaliran i pravilno konfigurisan), ali je takođe kao posledicu imao i nemogućnost da se TFS instalira na klijentsku mašinu.
“Basic” modus je u stvari spisak konfigurasionih koraka koje spreme TFS za korišćenje samo za verzioniranje koda (source control), praćenje radnih zadataka (work items) i kao server za bildanje koda. Jedino što je potrebno jeste funkcionalan IIS, kao i SQL Server 2008 (čak i Express radi posao, kao što ćemo videti u kasnijem tekstu). Ovo znači da se u verziji 2010 TFS takođe može koristiti i na Vista i WIndows 7 klijentskim operativnim sistemima.
Instalacija TFS-a 2010 je značajno pojednostavljena, uglavnom zato što je konfiguracija konačno odvojena od same instalacije. U verziji 2010, instalacija je prosto kopiranje bajtova na hard disk, tako da samo po sebi prolazi jako brzo, i po navici iz ostalih Microsoft programa. U jednom trenutku TFS pita šta želimo da instaliramo. Pošto želim da konfigurišem i build server u jednom trenutku, instalirao sam i to.
Na kraju instalacije startuje se configuration wizard. U njemu možemo dao daberemo nekoliko opcija, ali nas interesuje u ovom trenutku samo “basic”. Ostale opcije su “advanced”, koja predstavlja standardno podešavanje TFS-a za serversku instalaciju (u suštini, TFS sa svim mogućnostima). “Application Tier Only” služi da se reinstaliraju baze podataka i web aplikacije koje služe za osnovno funkcionaisanje TFS-a. “Upgrade”, sledeća i poslednja opcija, služi da se uradi upgreade sa prethodne verzije TFS-a, 2008.
“Basic” konfiguracija traži samo jednu informaciju, a to je instanca SQL Servera 2008. Ukoliko nemate isti, wizard će instalirati SQL Server 2008 Express sa default-nom instancom (SQLEXPRESS). Pošto sam imao već instaliran 2005 Express, ručno sam instalirao verziju 2008 (instalacija, ukoliko ne želite da skidate, se nalazi u Tools folderu mesta na koji se TFS instalirao) i odredio sam ime instance.
Sledeći korak je verifikacija sistemskih zahteva. Ovde jedna napomena, ukoliko radite instalaciju na domenskom računaru, konfiguracija zahteva da domen bude dostupan. Ukoliko postoje greške ili upozorenja, alat će vas lepo upoziriti i preporučiti korake da se isti reše.
I zatim sama konfiguracija, gde konfigurator sam podesi sve što je potrebno. Ako pogledate malo bolje sliku, videćete da se radi samo o nameštanju osnovne baze za držanje konfiguracija, IIS sajtova itd.

I konačno, posle nekoliko koraka, konfiguracija je bila gotova. Značajno lakše nego trenutno stanje, moram priznati, i pritom sa jako lepim alatom.
I onda ništa nije radilo…
Da, i to je uspelo da me zadesi. Naime, mašina na koju sam instalirao TFS je Windows 7 Enterprise koji je instaliran kao upgrade sa Viste SP1 Enterprise. IIS, koji je ključna komponenta za funkcinonisnaje TFS-a, je ibo instaliran na Visti i sa njom je upgrade-ovan na verziju 7.5. U trenutku kada sam pokušao, posle uspešne konfiguracije, da se konektujem na TFS, preko Visual Studia ili preko Web access-a, dobijao sam nesrećni TF31002 error, generičku grešku koja označava nemogućnost klijenta da dođe do Team Foundation Servera. Posle malo vidovnjačkog debaginga i ustanovljavanja šta je moglo da pođe naopako, shvatio sam da je velika mogućnost da je nekako IIS taj upgrade malo loše preživeo. Jedna reinstalacija IIS-a i TFS-a kasnije, i sve je počelo da radi kako treba. IIS, inače, se instalira i kroz TFS instalaciju, odnosno, ista će da podigne IIS sa svim potrebnim preduslovima.
…ali je odmah potom sve u redu
Naravno, kada sam jednom rešio problem, rad sa TFS-om je postao standardno ono na šta sam do sada navikao. Osim reportinga i integracije sa SharePoint-om, svakako. Source control, praćenje radnih zadataka i build proces radi isto kao i na “velikom” TFS-u, sa svim pogodnostima koje 2010 verzija donosi. Ono što je takođe veoma dobro, jeste da je web access omogućen takođe OOB, tako da mogu da instaliram TFS na jedan kućni server (čak i Home Server, što da ne) i da mu pristupam preko Web Access-a, što je super.
Toliko o tome. Sada konačno možete da probate TFS i na laptoptu, recimo, ili klijentskoj mašini, sa minimalnom instalacijom, i da vidite kako to izgleda.
Out.
B.D.
Kao što sam pomenuo u prošlom postu, Beta 2 Visual Studia 2010 je sa osobom donela mnogo više od novih bajtova. Zajedno sa puštanjem u download, Microsoft je najavio i nove edicije Visual Studia, koje će zameniti do sada prisutne edicije na tržištu.
Trenutno stanje
Ukoliko neko nije upoznat sa trenutnim stanjem raznoraznih izdanja na tržištu kada pričamo o Visual Studiu, napraviću jedno kratak pregled. Ovo će takođe pomoći u stavljanju izmena koje se sada dešavaju u pravilan kontekst.
Kao prve i osnovne edicije imamo Express edicije, koje su namenjene hobistima, studentima i slično, i koje su besplatne. Njih imamo 4, po jedna za svaki “veliki” jezik u .NET familji (VB.NET, C# i C++) i potom jedna za Web development.
Odmah posle njih imamo Visual Studio 2008 Standard i Visual Studio 2008 Professional. Professional se uglavnom najviše i koristi, pošto predstvlja idealnu ediciju za male razvojne timove ili za pojedinačnog developera. Doduše, ovo sve zavisi od potreba, naravno.
Na kraju imamo ceo Visual Studio 2008 Team System, koji se deli na klijentske alate, tzv. timske edicije podeljene po timskim rolama (developer, tester, arhitekta i “bazić”, mada je izraz “developer baza podataka” daleko bliže istini), kao i Team Suite, koji predstavlja skup svih timskih edicija u jednom (softverskom) pakovanju. S druge strane imamo Team Foundation Server, koji je serverska komponenta, i predstavlja centralnu integracionu tačku celog Team System-a.
Nove edicije i mapiranje na stare
Postoji tri nove edicije:
- Visual Studio 2010 Professional sa MSDN-om
- Visual Studio 2010 Premium sa MSDN-om
- Visual Studio 2010 Ultimate sa MSDN-om
Pored ovih, i dalje smo zadržali Express edicije, ali one nisu doživele nikakve promene. Dakle, i dalje postoje četiri osnovne edicije, zavisno od jezika, imaju svoja ograničenja u odnosu na druge edicije i i dalje su kompletno besplatne za upotrebu.
Visual Studio 2010 Professional je isto professional izdanje kao staro, stim što ima i podršku za TFS, odnosno za verzioniranje koda, rad sa radnim zadacima (work items), i uključuje Team Explorer.
Visual Studio 2010 Premium je napravljen kao među korak, odnosno, po mogućnostima je napravljen da zameni Timske edicije. sadrži isto što i Professional, ali sa dodacima koji su ranije bili deo timske edicije za developere, kao što su code coverage, code metrics, sampling i profiling i tome slično. Isto tako, ova edicija u sebe uključuje novi ULM dijagram za klase, slično kao što je Professional verzija u sebe uključivala raniji dijagram za klase. Pored ovoga, Premium sadrži i mogućnosti ranije edicije za “baziće” (Database Edition), tako da omogućava podršku i za taj scenario.
Visual Studio 2010 Ultimate je skoro pa pandan ranijoj Team Suite verziji. Slično kao i Ultimate edicije kod Windows operativnog sistema, ona sadrži sve mogućnosti prethodno pomenutih verzija. Ako ste pratili do sada, verovatno ste se zapitali šta se dešava sa ostalim timskim edicijama, onima za testere i arhitekte, odgovor je da se te mogućnosti nalaze u Ultimate Verziji. Pored mogućnosti pravljenja gomile novih UML dijagrama, imamo i nove testove, a imamo i podršku za nešto što se zove Test Lab Management, kao i kompletno nov alat za upravljenja testovima. Još jedna novost je što je po default-u uključen i Team Exporer, osnovni UI ka Team Foundation Serveru, tako da sada više nije potrebno da ga zasebno instalirate.* Pored toga, IntelliTrace, odnosno “historical debugger” je dostupan samo u Ultimate verziji.
Naravno, za sve ovo postoji jasna tabela koja daje veoma lep pregled.
Da li ima još nešto?
Da, naravno. Pored novih edicija, postoje i promene u MSDN pretplati. Sada postoji daleko više stvari koje se dobijaju kao deo MSDN pretplate, zavisno od, naravno, nivoa iste. Expression Studio 3, recimo, određeni broj sati za Windows Azure i slično. Sve ove informacije se takođe nalaze u prethodno pomenutoj tabeli.
Šta sa Team Foundation Serverom?
Team Foundation Server 2010 će se licencirati i biti dostupan kao i do sada. Nove mogućnosti ćete imati prilike da vidite na Sinergiji, pa ne bih sada kvario iznenađenje. Dovoljno je reći da donosi konačno neke stvari koje su bile veoma tražene od strane đire zajednice, kao i novi mod instalacije koji će omogućiti da TFS koristite na više mesta…mada, ovo poslednje bih možda mogao da pokažem u narednom postu.
Out.
B.D.
*– Naravno, i dalje možete da ga instalirate van Visual Studia, kao i do sada, za ljude koji ne žele da koriste ceo Visual Studio.
Konačno. :) Trenutna dostupnost je za MSDN pretplatnike, a 22. oktobra će se pojaviti na Microsoft Download Centru za šire korisnike. Naravno, vaš autor već skida ISO sa MSDN-a, i ISO fajl koji želite da skinete je veći za oko 1GB od Beta 1 ISO fajla. MSDN Server su malo ugrejani, očigledno, pošto dobijam transfer od oko 200 kb/s (i manje), umesto normalnih 500++.
Fokus u izradi ove bete je bila brzina i stabilnost. Po komentarima MVP-eva koji su imali pristup internim bildovima na osnovu kojih je zapakovana Beta 2, tim iz Redmonda je prilično uspeo u svom cilju. Kvantifikacije su užasno nezahvalne, pa neću iznositi tvrdnje o “dvostruko većoj brzini” i slično, ali ako je verovati pomenutim komentarima, to je efekat koji se oseća. Sa svoje strane sam prethodnu betu pokretao i koristio isključivo u virtuelnim mašinama; za ovu razmišljam da je već sasvim u redu da bude instalirana direktno na mašinu.
Pored tehničkih karakteristika, VS2010 Beta 2 sa sobom donosi i jednu malu stvar, a to je promena do sada svima poznatog Visual Studio logoa. Slična promena se desila i sa MSDN logoom, pa čak i sa celim sajtom, ako ste mogli da primetite u poslednjih nekoliko dana. Umesto poznate crvene boje, sada nam preovlađuje plava i ljubičasta. MSDN je takođe dobio i neke opcije “iza kulisa”, tako da sada možete da koristite i low-bandwidth prikaz, kao i scriptless prikaz, ukoliko ste na uređaju koji ne podržava JavaScript.
Iako se trudim da ovo bude koliko-toliko tehnički blog, moram da napomenem i promene u edicijama (kako mi to u Microsoft-u volemo da zovemo, SKU-ovima) koja je došla sa VS2010 Beta 2 objavljivanjem. Umesto nekoliko edicija, zatim timskih edicija i na kraju Team Suite koji je “ultimativna” edicija jer obuhvata sve mogućnosti, imamo svega 3 (i slovima: tri) izdanja:
- Microsoft Visual Studio 2010 Ultimate sa MSDN-om
- Microsoft Visual Studio 2010 Premium sa MSDN-om
- Microsoft Visual Studio 2010 Professional sa MSDN-om
Koje su razlike ću pokriti u narednim postovima. Ukoliko želite da probate Beta 2, da se upoznate sa svim promenama, strana je na http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx, a ISO fajl vas čeka na MSDN-u.
Out.
B.D.
Uf, i to je konačno gotovo. Kao što sam pomenuo u jednom prethodnom postu, demo mašina je došla na red, posle silnih peripetija, i sa Viste Enterprise sa SP1 prešla je na Windows 7 Enterprise…za sada bez bilo kakvih service pack-ova. Ono što je zanimljivo jeste što prvi put nisam uradio “čistu” instalaciju nove verzije Windows-a, već sam okušao sreću sa upgrade-om.
Standardna mudrost
Standardna mudrost, još iz doba 386 CPU-ova i Windows-a 3.0, uvek je govorila da se ne radi upgrade, već samo “čista” instalacija, koja podrazumeva ili da se ručno, iz DOS prompta, obriše Windows direktorijum (u eri kada je 3.0 bio glavni “OS” koji ste mogli da pokrenete, “folder” još uvek nije postojao kao dezignacija) i da se onda instalira nova verzija. Tokom vladavne 9x serije, postojali su neki “trikovi” kako bi se upgrade radio, ali je i dalje mudrost bila da se uradi čista instalacija; jedina razlika je što je sada bilo preporučeno da se briše i Program Files folder. Sve u svemu, ovo se nastavilo do dana današnjeg.
Iako sam do sada prilježno išao sa ovim procesom, po prvi put sam hteo da probam kako izgleda upgrade. Poslednji upgrade koji sam probao je bio sa davnim Windows 98SE, i to je prošlo relativno bezbolno, mada se na kraju ipak, ako se dobro sećam, desila reinstalacija.
Upgrade proces
Upgrade proces se radi na isti način kao i do sada. Preuzmete ISO fajl (ili mediju, ukoliko ste nabavili sa drugog mesta), mount-ujete ga preko nekih od programa za tu primenu i pokrenete setup.exe. Potom kreće prvo upgrade instalacije, koji obavezno uradite, zatim skreniranje sistema u potrazi za uređajima i instaliranim programima koji mogu da budu problematični prlikom prelaska na novu verziju Windows-a. Posle toga kreće sama instalacija, koja ide slično kao i “čista” instalacija. Upgrade proces traje duže u smislu kopiranja fajlova i osnovnih podešavanja n ego kada radite čistu instalaciju, pa planirajte da vam računar bude upaljen makar 2-3h. Isto tako, preporučujem da prekopirate instalaciju na hard disk (ako ih imate više u računaru, na različit od sistemske particije), pošto mnogo brže ide.
Post-upgrade
Posle procesa, jedine dve aplikacije koje su mi pravile probleme su Lenovo System Update i Live Mesh klijent. Prvi i zvanično nije podržan na Windows-u 7, čak sumnjam i da više nije podržan uopšte od Lenova. Live Mesh klijent je imao čudne simptome, pošto je posle preuzimanja najnovijeg news feed-a sa mog Mesh-a odlučivao da pređe u offline režim rada i da odbija da sinka same fajlove. Srećom, Mesh je lagana stvar, pa je jedna brza reinstalacija pomogla. Od tada, do trenutka kada pišem ovaj post, nemam nikakve probleme.
Naprotiv, laptop je “procvetao”. Iako je isti hardver, isti programi, isti nivo opeterećenja koji stavljam pred njega, čini mi se bržim. Baterija duže traje. Manje ima trenutaka da mu je CPU u punom zauzeću iz čista mira. I na kraju, konačno imam predvidive rezultate kada spustim poklopac. Uvek ode u standby, bez greške.
Iskreno sam impresioniran.
Out.
B.D.