Wie kann ich TFS2010 dazu bringen, MSDEPLOY für mich über MSBUILD auszuführen?

Es gibt ein ausgezeichnetes PDC-Gesprächhier verfügba von Vishal Joshi, in dem die neuen MSDEPLOY-Funktionen in Visual Studio 2010 sowie die Bereitstellung einer Anwendung in TFS beschrieben werden. (Es gibt auch ein tolles Gespräch von Scott Hanselman, aber er geht nicht in TFS).

Sie können MSBUILD in TFS2010 verwenden, um MSDEPLOY aufzurufen und Ihr Paket für IIS bereitzustellen. Dies geschieht über Parameter an MSBUILD.

Der Vortrag erklärt einige der Befehlszeilenparameter wie:

/p:DeployOnBuild
/p:DeployTarget=MsDeployPublish
/p:CreatePackageOnPublish=True
/p:MSDeployPublishMethod=InProc
/p:MSDeployServiceURL=localhost
/p:DeployIISAppPath="Default Web Site"

Aber wo ist die Dokumentation dafür - ich kann keine finden?

Ich habe den ganzen Tag damit verbracht, dies zum Laufen zu bringen und kann es nicht ganz richtig machen und endete immer wieder mit verschiedenen Fehlern. Wenn ich das @ des Pakets starcmd Datei, die es perfekt bereitstellt. Wenn ich WebDeploy über Visual Studio ausführe, funktioniert es auch einwandfrei.

Aber ich möchte, dass die gesamte Bereitstellung ausgeführt wirdmsbuild Verwenden Sie diese Argumente und nicht einen separaten Aufruf vonmsdeploy oder das Paket ausführen.cmd Datei. Wie kann ich das machen

PS. Ja, ich habe dasWeb Deployment Agent Service Laufen. Ich habe auch den Verwaltungsdienst unter IIS ausgeführt. Ich habe versucht, beide zu verwenden.

Args Ich benutze:

/p:DeployOnBuild=True 
/p:DeployTarget=MsDeployPublish 
/p:Configuration=Release 
/p:CreatePackageOnPublish=True  
/p:DeployIisAppPath=staging.example.com   
/p:MsDeployServiceUrl=https://staging.example.com:8172/msdeploy.axd 
/p:AllowUntrustedCertificate=True

gibt mir

C: \ Programme (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Web \ Microsoft.Web.Publishing.targets (2660): VsMsdeploy ist fehlgeschlagen. (Remote-Agent (URLhttps: //staging.example.com: 8172 / msdeploy.axd? site = staging.example.com) konnte nicht kontaktiert werden. Stellen Sie sicher, dass der Remote-Agent-Dienst auf dem Zielcomputer installiert und gestartet ist.) Fehlerdetails: Remote-Agent (URLhttps: //staging.example.com: 8172 / msdeploy.axd? site = staging.example.com) konnte nicht kontaktiert werden. Stellen Sie sicher, dass der Remote-Agent-Dienst auf dem Zielcomputer installiert und gestartet ist. Eine nicht unterstützte Antwort wurde empfangen. Der Antwortheader 'MSDeploy.Response' war '', aber 'v1' wurde erwartet. Der Remote-Server hat einen Fehler zurückgegeben: (401) Nicht autorisiert.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage