How to set destination website on MSDeploy.exe command line

dthrasher picture dthrasher · Jan 11, 2014 · Viewed 24.9k times · Source

I have a Web Deploy 3.5 package that I want to deploy to a remote server. How do I specify the name of the site on the MSDeploy.exe command line?

Here's what I have so far:

C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe
    -source:package='package.zip' 
    -dest:auto,computerName="ServerName",includeAcls="False" 
    -verb:sync 
    -disableLink:AppPoolExtension 
    -disableLink:ContentExtension 
    -disableLink:CertificateExtension 
    -setParamFile:"package.SetParameters.xml"

But the name of the site is specified in the package.SetParamters.xml file, and I'd prefer to set it on the command line. Some of the places I want to deploy this package are different sites located on the same server, like our Stage and UAT sites.

I've looked at using the iisApp and appHostConfig providers described here: http://technet.microsoft.com/en-us/library/dd569040%28v=ws.10%29.aspx

But I'm having trouble using those in combination with a package file.

Answer

Richard Szalay picture Richard Szalay · Jan 12, 2014

You can override it using setParam:

msdeploy.exe
    -source:package='package.zip' 
    -dest:auto,computerName="ServerName",includeAcls="False" 
    -verb:sync 
    -disableLink:AppPoolExtension 
    -disableLink:ContentExtension 
    -disableLink:CertificateExtension 
    -setParamFile:"package.SetParameters.xml"
    -setParam:name="IIS Web Application Name",value="site name"