views:

601

answers:

3

You know, the next "big" and "enterprisey" thing from Microsoft.

Is it just me, or is it really hardly for humans? Main highlights are (IMO):

  • Absolutely cryptic syntax (-skip:objectName=filePath,absolutePath=App_Offline.* just for skipping App_Offline.html)
  • Manifest as an after thought
  • Lack of thorough documentation
  • Not a word about extensibility (except for several blog posts out there). Moreover, all these extensions developed in great pains have to be registered in GAC and registry
  • Waaay too low-level (metadata/metakey; all this IIS jazz)
  • No integration with MSBuild

Granted, MSDeploy and MSDeployAgent are quite powerful, but do they really need to be that complex for relatively simple tasks?

+1  A: 

The statement of documentation is typical of a MSFT 1.0 product, unfortunately MSDN no longer have dedicated Developer Technology Engineers to fill the gaps --- instead, there is a blind faith that the web will provide it.

I am actually considering dusting off my writing skills and write a short ebook on it since there is likely a market for it....

ex Dr M S D N Gui
+1  A: 

Actually there are MSBuild tasks for MSDeploy. They will be shipped with .NET 4/Visual Studio 2010.

Sayed Ibrahim Hashimi
+3  A: 

I too share your frustrations over the lack of documentation and the apparent low-level nature of this tool.

However what MS has done is finally create a free tool with which you can actually script whole server deployments, including parameterising addresses, configurations etc. This is unfortunately a very complicated thing to do - given how many bits of configuration actually go into a web server - and this is probably the best way to do it all.

What we need now is a really good GUI that can help build up these packages, and scripts etc. The GUI that is embedded within IIS is good - but again, short on explanation - so hopefully soon that'll be addressed.

On the functional side, I'm using at the moment to deploy a site from dev -> staging -> live with parameters to change bound IP addresses etc. I was deeply frustrated that it took me a few days to get it all working - however now I have it, I can remove a lot of the possibly of human error at the IT Support side - who are responsible for our deployments. I now only have the configuration of my master staging server to worry about - and can be sure that all the servers in the web farm will be kept in sync whenever I deploy.

As Sayed mentions, as well, there are MSBuild tasks in 2010 (the Website Deployment feature is now implemented using msdeploy) to work with this - which also brings the possibility of a true Continuous Integration environment to VSTeamSystem - having a team build that can actually perform a full web deployment as its last step is very exciting (and scary, granted!).

Andras Zoltan