Nach getan, was hier vorgeschlagen wird: ... wie ich automatische Bereitstellungen als Teil meines Builds einrichten, wenn ich einen vollständigen Zweig erstellen **/*.sln
?Bereitstellung auf einem privaten IIS-Server von einem Build in Visual Studio Team Services
Was ich versucht habe ...
In VS kann ich die neueste Version des Codes erhalten, öffnen Sie eine Lösung und dann ... Rechtsklick> Veröffentlichen> Pick-Profil veröffentlichen> bereitstellen
Ich habe meine Veröffentlichungsprofile wie "dev", "qa", "production" genannt. Diese beziehen sich auf die Umgebungen, in denen das Projekt bereitgestellt wird, und die Profile enthalten alle Konfigurationsinformationen, die VS für die Bereitstellung benötigt (über webdeploy/msdeploy) mit der Anwendung "one click deploy".
Ich möchte Team Services auf dem Build-Server genau das gleiche für Projekte haben, die Veröffentlichungsprofile definiert haben, nachdem es den Code erstellt hat.
Mein Verständnis war, dass ich konnte nur die msbuild args wie folgt hinzufügen ...
dies führt in der Bereitstellung Teil des Build-in auf dem Build-Protokoll die folgende Ausnahme zu werfen ...
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\Web\Microsoft.Web.Publishing.targets(4288,5):
Error ERROR_USER_NOT_ADMIN: Web deployment task failed.
(Connected to 'server' using the Web Deployment Agent Service, but could not authorize. Make sure you are an administrator on 'server'.
Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_USER_NOT_ADMIN.)
Welcher Benutzer verwendet dies, wenn nicht der Benutzer im Veröffentlichungsprofil definiert?
Verwandte Themen:
- Publishing via TFS Build Service fails with "User not Admin"
- TFS Builds: Running the builds as administrator
Ich habe ein Konto auf dem Server in Frage (da der Aufbau und Server bereitgestellt werden, um die gleichen Server es Dinge gemacht einfacher), ich habe auch eine Gruppe auf den Server namens "MSDepSvcUsers" hinzugefügt und hinzugefügt das neue Konto in Frage zu ihm und die Admins-Gruppe auf der Box.
Ich habe dann sowohl den Web Deployment Agent-Dienst als auch den Team Services Agent-Dienst angewiesen, unter diesem Konto zu laufen (und neu gestartet).
Leider ist das Ergebnis das gleiche ... Ich möchte jetzt wirklich wissen, wie ich das Konto, das für den Msdeploy-Befehl verwendet wird, sicherstellen möchte, ohne auf viele Skripts angewiesen zu sein ... oder vielleicht deshalb Microsoft hat diese Option noch nicht als Standardbereitstellungsschrittoption in Team Services eingerichtet!
Ich habe das funktioniert durch VS bereits ich habe 1 Klick implementiert funktioniert, aber meine Projekte nur erstellen und veröffentlichen (mit einem MSDeploy veröffentlichen Profil), ich habe die Veröffentlichungsprofile für die Bereitstellung direkt auf den MSDeploy-Dienst (statt nur Erstellen eines Pakets) ... kann ich nicht irgendwie die Builds von VSO nutzen, anstatt ein Paket zu erstellen, das bedeutet, Skripte zu schreiben und überall Variablen zu haben, um Dinge wie auth zu behandeln und die Server-URL zu speichern, was schon alles ist in meinen bestehenden Veröffentlichungsprofilen ... wenn ja, wie? – War
Ja, Sie sollten in der Lage sein, "/ p: DeployOnBuild = true/p: PublishProfile =" zu Ihrer VSO-Build-Arg-Liste hinzuzufügen, um dies zu erreichen. –
chief7
Yeh ich habe das getan ... scheint nicht zu funktionieren, deshalb habe ich am Ende diese Frage gestellt :( – War