views:

471

answers:

2

I've just been reading about MSDeploy, the new website deployment tool from Microsoft. I'm developing an installer for a webapplication and a webservice to be used for our off-the-shelf product. I have a couple of questions that I couldn't find obvious answers to.

  1. Does MSDeploy have robust support for upgrading websites after the initial deployment?
  2. I can see MSDeploy has good support for the initial deployment of databases. But does it have support for upgrading schemas whilst preserving the current data?

Links addressing these specific questions would be good.

+3  A: 

1.Does MSDeploy have robust support for upgrading websites after the initial deployment? A. Yes MSDeploy works with the model of making destination same as the source... So if you create version 2 of your Website package and the apply it on your version 1 server then your version 1 server will now have version 2 site... Ofcourse you can also choose not to delete existing files on the server...

2.I can see MSDeploy has good support for the initial deployment of databases. But does it have support for upgrading schemas whilst preserving the current data? A. MSDeploy can take an SQL Scripts and run them on the server so if you produce scripts via incremental DB deployment tools like TS Data or Red Gate and package them inside MSdeploy packag then you should be all set... Out of the box MSDeploy does not do data/schema diff comparison just yet...

Also MSDeploy is integrated with VS 2010 you can learn more at http://bit.ly/VS10deploy

Hope this helps... Vishal R. Joshi | http://vishaljoshi.blogspot.com

Vishal R. Joshi
+2  A: 

I have been using the runCommand verb in msdeploy to execute my database upgrades/migrations. I use tarantino which will run your incremental update scripts against your database. The good thing about using a migration tool like tarantino is that it keeps track of the changes that are applied so that you can run the command multiple times without running a migration twice against your upgrade environments. To see this in action you can look at the Code Camp Server opensource project. The build and deployment scripts show how to do this and we have 20+ sql migration scripts. http://codecampserver.org

Eric Hexter