I'm currently working on setting up a release strategy for our C# web apps.
All our source code is kept safe by subversion. My goal is to accomplish the following:
- Automate release builds of all our websites
- Create per-environment and per-server builds with relevant configuration (eg our staging servers and live servers log to different databases)
- Enable a simple installation of the latest builds to our remote live servers
- Be able to tell easily what version of the site is running on our servers
- Be able to relate the current installed version to a subversion number
My testing so far has lead me to some BATch files running MSBUILD over my sites and some NSIS scripts that compile all the files into a single EXE for easy installation. It's coming on well but I still have some way to go.
If anyone has any recommendations I'd love to hear them!
PS NSIS is fantastic! If you ever need to create any installers, try it!!