2010-12-15 8 views
3

Ich habe ein kleines Auth-Problem mit TeamCity, wenn ich einen Befehlszeilen-Build ausführe. Es geht um executing an svn checkout command zu einer vorhandenen Frage verwendet, aber ich mag es fragen explizit hier:Warum wird der TeamCity-Befehlszeilen-Runner unter "System" ausgeführt?

Warum ist es, dass, wenn die Teamcity Build-Agent-Dienst ist so konfiguriert, unter einem bestimmten Active Directory-Konto und nicht dem lokale System läuft Konto, wenn ich diesen Befehl ausführen:

echo "%username%" 

ich diese Ausgabe bauen:

[20:52:04]: C:\TeamCity\buildAgent\work\b67560ceb299718c>echo "SYSTEM" 
[20:52:04]: "SYSTEM" 

Diese rea ist Ich versuche, meine Befehle zur Ausführung von Befehlen unter der Identität meines AD-Dienstkontos zu verheerenden. Warum passiert das? Andere Build-Runner (d. H. MSBuild) werden unter der Identität des Dienstkontos ausgeführt. Warum geschieht dies nicht für die Befehlszeile?

Update 1: Wrapping den Befehl in einem MSBuild-Skript mit einem Exec Ziel tut das Gleiche - aktuelle Benutzer ist noch "System".

Update 2: Der Ausgang eines Befehl „set“ die Benutzername als „System“ zeigt aber das Benutzerprofil zeigt auf, dass das Dienstkonto:

[13:38:28]: USERDNSDOMAIN=[domain.dns name] 
[13:38:28]: USERDOMAIN=[domain] 
[13:38:28]: USERNAME=SYSTEM 
[13:38:28]: USERPROFILE=C:\Users\[service account] 
+0

können Sie% username% verwenden? –

+1

Das Problem ist nicht die Fähigkeit, die Identität des aktuellen Benutzers zu bekommen, das funktioniert gut. Das Problem besteht darin, dass der Prozess nicht unter der erwarteten Identität ausgeführt wird. Und ich glaube nicht, dass% user.name% eine gültige Syntax ist. –

+0

http://confluence.jetbrains.net/display/TCD6/Predefined+Build+Parameters#PredefinedBuildParameters-AgentSpecificProperties siehe Tabelle der Agent-Eigenschaften. –

Antwort

0

Haben Sie versucht, einen Neustart den Service nachdem Sie die Anmeldeinformationen geändert haben? Ich meine sowohl den Teamcity-Server und den Build-Agent

Verwandte Themen