IIS7 - Web Deployment Tool - SetParam/SetParamFile to set http and https bindings + Cert
- by Andras Zoltan
Hi, we're currently using the MS Web Deployment Tool to sync a live website and some WebServices from a staging box to two live servers.
The staging box hosts the site on any IP on port 17000, whereas the two live servers are load-balanced and have a different IP for each of them.
At present, I generate two separate packages for deployment - one for each machine - using the sync operation and specifying a DestinationBinding parameter as follows:
msdeploy -verb:sync
-source:WebServer,computerName=localhost
-dest:package="machinename.zip"
-setParam:type="DestinationBinding",scope="SiteName",value="ip_address:port:".
(Split across multiple lines to make it easier to read!)
I run this twice, with a different target filename and ip address for each of the two machines. When it comes to deployment, I simply do a sync from each package to its respective live site.
I know, I know - I should be able to do it by generating one parameterised package and then perhaps using the SetParamFile switch for each of the two Servers - believe me I'd like to, but the documentation on doing this is frankly non-existent.
Now I need to configure and deploy both HTTP and HTTPS binding for this site; including also the ssl cert that is to be used.
I've added an SSL binding for the site on the staging box - which uses a development cert (which will need to be replaced - or should the staging box be using the live cert?), and now the above command line has the effect of replacing the target IP on both http and https entries.
It appears that I cannot specify multiple bindings plus the cert information in the DestinationBinding value in the -setParam above, so anyone know how would I go about doing this?
Any help greatly appreciated.