ScottGu’s latest blog post talks about the VS 2008 web deployment project and the MS Web Deployment Team blog, which deals with a web deployment tool (not to be confused with the VS 2008 project).
I had to do a little digging, but found this white paper on MSDN which explains the web deployment project for 2005. From the abstract:
Visual Studio 2005 provides deployment support through its Copy Web Site and Publish Web Site features. While these are ideal for many scenarios, there are other, more advanced scenarios where developers need the following capabilities:
- More control over assembly naming and output.
- Custom pre-processing and post-processing for the build.
- The ability to exclude, add, and transform files and directories during builds.
- The ability to modify the Web.config file to change database connection strings, application settings, or the URLs for Web references, depending on the build configuration. (For example, it might be necessary to use different values for development, test, staging, and release settings).
this white paper describes a solution to these advanced scenarios and introduces a new feature called Web Deployment Projects for Visual Studio 2005.
The web deployment tool on the other hand, is a stand alone tool (currently just a command line utility called msdeply.exe), “that provides support for deploying, synchronizing and migrating IIS 6.0 and 7.0.”
It supports moving configuration, content, SSL certificates and other types of data associated with a web server. You can choose to sync a single site or the entire web server. Because we know that one tool can never ‘automagically’ guess what your application relies on, we’ve tried to be pretty flexible and powerful – you can customize exactly what you want to sync using a manifest file. You can also skip sites or other objects, or you can perform regular expression replacements during a sync (like changing the home directory on the destination machine).
These two new tools will help make deployment a lot easier and enable a more agile environment. Unfortunately my project assignment at work has changed, so I won’t be getting direct exposure to these.