views:

182

answers:

1

What are the best tools out there for automated deployments of Windows Services (i.e. NT Services) and ASP.NET web sites?

I know of good tools for automated builds, tests, versioning, and all that stuff, but I'm curious if there are any boiler-plate batch/PowerShell/MSBuild/NAnt/etc. scripts out there that can accomplish something like this:

  1. Build .NET software (optional - software might already be built)
  2. Create a backup of the existing install on the server
  3. Stop the service or website (if necessary)
  4. Copy new files up to the server
  5. Restart the service/website
  6. If something goes wrong, maybe an easy/quick way to rollback to previous install

I'm thinking a custom PowerShell script might be the way to go, but I don't want to re-do work if it has already been done.

Thanks!

+1  A: 

We use a combination of Scons, buildbot and bash scripts. Everything but the bash scripts will probably work for .NET deployment as well. I really recommend Scons and Buildbot. They are very powerful tools, that make deploying as simple as a button click or an irc message. You can also schedule builds with buildbot or respond to commit hooks.

apphacker