2012-10-04 9 views
6

Also habe ich meine Bereitstellung auf einem Build arbeiten und ich habe meine Build eingerichtet, um ein Bereitstellungspaket zu erstellen und das Paket auf dem Zielserver auszuführen. Großartig bis jetzt. Nun aber wird die Anwendung erweitert und ich muss verschiedene Konfigurationen pro Maschine haben (Kontonamen und dergleichen),Verwenden Sie eine andere setParameters.xml-Datei?

Kann ich angeben, was der Dateiname von "setParameters.xml" zum Beispiel zu "Server1.SetParameters.xml " o.ä ?

Ich habe es kopiert die Dateien über die SetParameters.xml vor jeder Bereitstellung für jetzt, aber scheint in elegant und sollte eine Datei für was auch immer der Grund gesperrt werden, die falsche Einstellungen auf den falschen Server bereitstellen würde.

+0

Verwenden Sie Msdeploy.exe selbst oder verwenden Sie die Visual Studio-Integration (z. B. Web Publishing Pipeline)? –

+0

Ich verwende das Paket, das MsBuild mit den '/ p: DeployOnBuild = true 'und'/p: DeployTarget = Package' erstellt habe. Ich führe dann das Paket im 'AfterDropBuild' Ziel mit exec und einem Dateipfad wie' aus _PublishedWebsites \ Website_Package \ Website.deploy.cmd/Y/M: Server1/U: Benutzer/P: Passwort' Was ich denke, ist die zweite Option, aber wenn msdeploy direkt verwenden, bin ich glücklich, zu wechseln. –

Antwort

11

Da Sie die verwenden WPP-generierte deploy.cmd Datei, die einfachste Wahl %_DeploySetParametersFile% auf einen vollständigen Pfad zu Ihrer setParmeters Datei zu setzen ist, bevor Sie das deploy Skript auszuführen.

SET _DeploySetParametersFile=c:\full\path\to\setParmaeters.xml 
call Website.deploy.cmd 

Alternativ, wenn Sie direkt verwenden MSDeploy möchten, können Sie -setParamFile:c:\full\path\to\setParmaeters.xml angeben. Weitere Informationen finden Sie unter Web Deploy Operation Settings

+5

Ich habe es mit dem folgenden Befehl 'Website.deploy.cmd/Y/M: Server1/U: Benutzer/P: Pass-setParamFile: Server1.SetParameters.xml 'Vielen Dank –

Verwandte Themen