views:

123

answers:

4

Hi Guys,

I'm working on a fairly new project and we started from scratch. So not only the web application itself needs to get developed, but also the whole process of publishing the site and configuring the web server etc. need to be done from scratch.

This question might be more apropriate for serverfault, but that really depends on the answers. So, let's give it a try.

Wehn ever I publish our site via VS2008 (right click on the web site, publish web site, wait... done) I need to somehow tweak the process and trigger some other tasks, like: - Copy some folders from my dav machine to the web server - Delete the test database and let some scripts run on it - and maybe some more I'm not remebering right now.

I was reading about the most obvious solutions like MSBuild, Powershell and VSTS2008, but I don't really want to dive deep into them until really I know, that theses tools can actually solve my problems. So guys, I'm pretty sure a lot of you have got a lot of knowledge about these tools or know even better ones. Please let me know. I really appreciate.

Thats my environment I'm living in: - VS 2008 - VSTS 2008 - SQL Server 2008 - Windows Server 2008

UPDATE: Thanks for the great answers so far, but I'm especially looking for a solution integrated into Visual Studio Team Foundation Server as we're already using it for Source Control.

Cheers, Steve

+2  A: 

You can set pre and post build events, and can have one the events fire a script to complete your tasks.

ICodeForCoffee
Any good site with tutorials you can point to, where I find more information?
derSteve
+3  A: 

We deploy our web application with Subversion, and are very happy with it.

The build server compiles the application, copies it to a deploy directory and checks in changes to a Subversion repository. Okay, I admit that this is not trivial, but it's worth to invest here... because on the server(s) the deployment is now extremely easy. Advantages are:

  • Only the necessary files are copied to the server, the downtime is minimal (using svn update)
  • It's a piece of cake to verify what version is deployed to the server, and it's easy to have a consistent version across multiple web servers
  • If you screwed up, it's just 2 clicks to revert back to the previous version
  • It's takes care of deleting files when you deploy a new version. Copying a web application over an older version can leave potentially dangerous files
  • Modifications in the web.config are not overwritten by the deployment, they are merged. That's really a big plus
OutOfMemory
Thanks for the answer, but I don't want to throw yet another tool into the pool. We're using Team Foundation Server as Source Control.
derSteve
+1  A: 

You might look to see if the IIS Web Deployment Tool fits your scenario; it allows you to publish your website, configuration settings, database, etc... all together. This will also be integrated into Visual Studio 2010.

Jimmy
I had a brief look, but the product is in some sort of Beta. So, at this important point of the development process I don't want to struggle with Betas. Thanks for the answer anyway.
derSteve