This is a multi-part, step-by-step guide, on how to automate application deployment with TeamCity CI Server. This series is part of several other articles I have published about continuous integration.
In the related previous posts, I showed how to configure a build to compile a .NET solution and the run the project’s test suite. The part that we are missing is to have our CI server to automatically deploy our project so we can establish a continuous deployment mechanism too.
Deployment mechanisms will often depend on the platform your are developing and the type of application you need to distribute. For example, in iOS development you will most often use a third party distribution service to distribute your mobile app. On Windows Phone, you will need to go through the Windows Phone Marketplace. For desktop applications, you will probably want to generate installers and expose a way to securely download and install them. For web applications, you are most likely required to deploy the web app files on your web server.
Here is the breakdown of this series:
- Part 1: Setting Up the Deploy Step in TeamCity
- Part 2: Configuring the Web Application in IIS7
- Part 3: Completing the Web Deploy Configuration
Make sure to check out my posts on troubleshooting MSBuild and MSTest. The easiest thing to do to avoid issues, is to have Visual Studio installed on your server. However, must of us prefer to have vanilla server setups and certainly having a full Visual Studio installation on your server is overkill (although you might be required to do so because of licensing agreements).
I hope this series of articles help you and save you time. As usual, feel free to leave your comments and share your experience. Nothing better than a good tech conversation!