Meine erste produktive Team-Foundation-Server Installation

Bisher hatte ich mit dem Team Foundation Server (TFS) nur in Virtuellen Maschinen herumgespielt. Nun ging es daran einen eigenen produktiven TFS zu installieren. Wir entschieden uns für eine Single Server Installation.
Aus meinen bisherigen Erfahrungen aus der „Spielwiese“ und mit den Beta-Versionen wusste ich schon, dass man sich strengstens an die Installationsanweisungen halten sollte. Das ist auch schon in anderen Blogs und Artikeln beschrieben worden und ich kann das nur noch mal bestätigen.
Das sicherste ist, dass man sich die 12 Seiten für die Installationshinweise aus der TFSInst.chm komplett ausdruckt und wirklich Schritt für Schritt durchgeht.

Hier die Kurzfassung der Installationsfolge wie es bei mir (halbwegs) nahtlos klappte.

  • Neue Windows Server 2003 R2 Installation (Deutsch)
  • 1000mal Windows Update durchführen
  • In der Domäne wurden 4 neue User angelegt TFSSETUP, TFSSERVICE, TFSREPORTS, TFSPROXY. Die entsprechenden Accounts wurden der lokalen Administratoren Gruppe hinzugefügt. (Theoretisch gehen hier auch andere Namen).
  • Installation des IIS (ohne Frontpage Extensions, die der TFS nicht mag)
  • Microsoft SQL 2005 Setup durchführen. Hier habe ich den Weg der Answer-Datei gewählt, SQL2005ForATDT.ini.
    Achtung:  Diese Datei muss man jedoch ändern, wenn die Deutsche SQL 2005 Version installiert wird. Die Accountnamen „NT AUTHORITY\SYSTEM“ muss man ändern in „NT-AUTORITÄT\NETZWERKDIENST“ , da die INI Datei mal wieder nur für US-Versionen gebaut wurde. Zu finden ist diese Info hier: http://technet.microsoft.com/de-de/library/ms143504.aspx
    Unterlässt man diese Änderung erhält man bei der Installation des SQL-Servers diese kryptische Fehlermeldung:
    „Die Dienstkonten konnten vom SQL Server-Setup nicht überprüft werden. Entweder wurden nicht für alle installierten Dienste Dienstkonten angegeben, oder der angegebene Benutzername oder das angegebene Kennwort ist ungültig. Geben Sie für jeden Dienst einen gültigen Benutzernamen, ein gültiges Kennwort und eine gültige Domäne an, oder geben Sie ein integriertes Systemkonto an.“
  • Installation der Share Point Services 2.0. Aber nicht aus der Server Verwaltung, diese Version würde die MSDE mit installieren.
    Am Besten man lädt sich die neuste Version herunter und führt auch hier einen Silent-Install aus mit:
    stsv2.exe /C:“setupsts.exe /remoteSql=yes /provision=no /q“
    http://www.microsoft.com/downloads/details.aspx?familyid=B922B28D-806A-427B-A4C5-AB0F1AA0F7F9
  • Anschließend die englischen Sprachdateien für  die Sharepoint Services heruntrladen und installieren.
    http://www.microsoft.com/downloads/details.aspx?familyid=e7eec77d-4365-4b66-8e8d-9d079c509679
  • Noch mal nach aktuellen Updates bei Microsoft suchen.
    Allerdings war ich gezwungen das SP2 für den MS-SQL Server 2005 manuell zu installieren.

Puh… geschafft! 🙂
Jetzt geht es erst mit der eigentlichen Installation los und sie sollte durchlaufen…

VS-Tipps & Tricks: Command-Prompt öffnen im Projektverzeichnis

Es ist oft genug sinnvoll direkt im Projektverzeichnis eine Eingabe-Konsole zu öffnen. Ich persönliche verwende 4NT von JP-Soft, damit lassen sich viele Sachen weitaus schneller erledigen als mit dem Explorer.

Um schnell eine Eingabefenster zu öffnen kann man sich ein eigenes Tool einrichten.

  • Man klickt auf Tools -> External Tools…
  • Add Schalter anklicken
  • Dem Tool einen Namen geben (z.B. 4NT im Projektverzeichnis)
  • Als Command gibt man %COMSPEC% an
  • Als Argument /k „%VS80COMNTOOLS%\..\..\VC\vcvarsall.bat“ x86
    Durch diese Eingabe werden alle Environment Variablen gesetzt, die z.B. die Tools von VS2005 benötigen oder eben auch der Compiler. Dadurch kann man sofort alle Tools aus VS direkt von der Befehlszeile öffnen.
  • Bei Initial directory gibt man jetzt noch den Makro $(ProjectDir) an

Die entsprechenden Makros und Environment Variablen garantieren, dass die entsprechenden Batchfiles und auch der korrekte Befehlszeileninterpreter gefunden wird. Bei mir eben 4NT und nicht CMD.EXE. Durch die Verwendung von %VS80COMNTOOLS% wird auch der entsprechende Batchfile gefunden, egal wie das Programmverzeichnis heißt.

Der Aufruf von vcvarsall.bat setzt PATH, INCLUDE und LIB Environment-Variablen. Damit kann man alle VS-Tools diekt aus der Befehlszeile nutzen.

Warum ich diese komplizierte Methode gewählt habe? Ich liebe einfach universelle Angaben die man auf jeden Rechner übernehmen kann, egal wo die entsprechenden Softwarekomponenten installiert sind.