Auf dem Remote-Webserver habe ich den Remote-Service http://x.x.x.x/MsDeployAgentService installiert.Wie verwende ich VS2010 One-Click Publish (MsDeploy) zur Remote-Bereitstellung über die Befehlszeile?
Wenn ich den Befehl Veröffentlichen des Webanwendungsprojekts in VS2010 verwende, kann ich erfolgreich auf diesem Remote-Webserver veröffentlichen und eine bestimmte IIS-Website aktualisieren.
Was ich jetzt tun möchte, ist diese Funktion über die Befehlszeile auszuführen.
Ich rate, es ist zwei Schritte. Zuerst das Web-Anwendung erstellen Projekt der entsprechende Build-Konfiguration mit:
msbuild "C:\MyApplication\MyWebApplication.csproj"
/T:Package /P:Configuration=Release
dann den MSDeploy Befehl ausgeben, um es/Synchronisierung mit dem Server zu entfernen IIS veröffentlichen hat:
msdeploy -verb:sync
-source:package="C:\MyApplication\obj\Release\Package\MyWebApplication.zip"
-dest:contentPath="My Production Website",
computerName=http://x.x.x.x/MsDeployAgentService,
username=adminuser,password=adminpassword
Leider bekomme ich einen den Fehler:
Error: (10/05/2010 3:52:02 PM) An error occurred when the request was processed on the remote computer.
Error: Source (sitemanifest) and destination (contentPath) are not compatible for the given operation. Error count: 1.
ich habe eine Reihe von verschiedenen Kombinationen für Zielanbieter versucht, aber keine Freude :(
Hat es jemand geschafft, VS2010 Web Application Project "One Click" Veröffentlichen von der Befehlszeile zu replizieren?
Update: Aus einem wenig Fortschritt, der Befehl: MSDeploy -verb: sync -Quelle: manifest = "C: \ MyApplication \ obj \ Release \ Package \ MyWebApplication.SourceManifest.xml" -dest: Auto, Computername = xxxx, userName = admin, password = xyz wird verbunden aber schlägt mit Fehler fehl ... Ein Fehler trat auf, wenn die Anforderung auf dem Remotecomputer verarbeitet wurde. Fehler: Ein Wert für die Einstellung 'setAclUser' muss angegeben werden, wenn der Provider 'setAcl' mit einem physischen Pfad verwendet wird. hmmmm, irgendwelche Ideen? – David