I posted my slide deck from my talk (The Demise of Xcopy Deployment) at the terrific Ann Arbor Day of .Net 2010 on SlideShare. Thanks to everyone who attended both my talk and the event. A special thanks to the event organizers for doing a great job.
It’s not enough to just install MSDeploy on a server to allow Visual Studio 2010 to connect to the server. If you don’t follow the steps below, you will probably get 403 errors when trying to connect.
- When adding the Web Server (IIS) role, be sure to install Management Service.
- In the Services snap-in, find the Web Management Service and set its startup to Automatic (it’s manual by default). Don’t start it yet.
- Open the Internet Information Services Manager, and select the server.
- Open the Management Service feature.
- Check Enable Remote Connections.
- Choose a port (or keep the default), IP, Certificate, choose any restrictions you might require.
- In the Actions part of the right pane, click Apply.
- Click the Start link in the right pane.
Now IIS is configured to accept incoming connections. Open a port on the firewall for the port (8172 by default) you selected in step 6 above.
Install MSDeploy. Make sure you start the Web Deployment Service after the install, and set the service startup to Automatic.
Now you can use the Publish feature of Visual Studio 2010 to push directly to your development server.
See also: http://msdn.microsoft.com/en-us/library/dd465337.aspx
I’ll be speaking at the Ann Arbor Day of .Net on Saturday, May 1st, 2010. It’s being held at Washtenaw Community College. Register for the event at http://www.dayofdotnet.org/AnnArbor/Spring2010/Registration.aspx
Here’s the abstract for my talk:
The Demise of Xcopy Deployment
One of the great features of .Net when it first released was Xcopy deployment. No more .dll registrations, just copy the files to the web server. While this was a great feature for Microsoft developers, new problems emerged, specifically around managing web.config. Sections like connection strings and custom errors need to be managed between environments, which meant many copies of the files or scripts to change them. Other necessary steps, like managing permissions and IIS configuration were still outside the Xcopy process. A recent tool, MSDeploy, is now integrated into Visual Studio 2010 and makes managing these issues easier. Besides web.config, MSDeploy also manages file deployments and synchronization, ACLs, and IIS settings. If your deployments have multiple steps, need ReadMe files, or can’t be done by someone outside your team, you need to learn MSDeploy!