Using TeamCity Detached Builds to Invoke AWS Services

TLDR; Use TeamCity detached builds and callbacks to provide a more seamless integration between TeamCity and AWS Services. Asynchronous External Service One of the challenges with invoking a process in AWS from TeamCity is that the call to AWS is usually asynchronous. An example of when you might want to do this is to make … Continue reading Using TeamCity Detached Builds to Invoke AWS Services

Assembly Versioning with Team City and Git

Why version your assemblies?Having version information on your assemblies that are deployed with your application can be useful for determining what code was actually used to create a compiled asset.  Unfortunately the default versioning msbuild provides during a compilation is not extremely useful.  You can enable auto-increment on the version numbers, but unless you track … Continue reading Assembly Versioning with Team City and Git

Using MSBuild and Team City for Deployments (Part 4 of 4): Setting up a Web.Config Transformation without a Solution Configuration or Publish Profile

Setting up a Web.Config Transformation without a Solution Configuration or Publish Profile Based on our build and deployment strategy, we only need two different sets of compiler options (Solution Configurations): Debug and Release.   Having to create Solution Configurations or Publish Profiles just to allow for XML Web.Config transformations clutters our solution unnecessarily and could prove … Continue reading Using MSBuild and Team City for Deployments (Part 4 of 4): Setting up a Web.Config Transformation without a Solution Configuration or Publish Profile

Using MSBuild and Team City for Deployments (Part 3 of 4): Transform and Deployment

Transform and Deployment The first build configuration in our team city project built, tested, analyzed, and packaged our application for deployment.  It created a set of artifacts that we can use to deploy this version of our application to each of the target environments. Next we need to actually deploy our application.  This process requires … Continue reading Using MSBuild and Team City for Deployments (Part 3 of 4): Transform and Deployment

Using MSBuild and Team City for Deployments (Part 2 of 4): Continuous Integration Build and Verify

The first step uses MSBuild to do a complete rebuild of the application in release mode (separate pdb symbols and compiler optimizations enabled).  Next we run database migrations to prepare our test db environment for database integration testing.  Following that the unit tests are run with dynamic analysis by dotcover followed by static code analysis … Continue reading Using MSBuild and Team City for Deployments (Part 2 of 4): Continuous Integration Build and Verify

Using MSBuild and Team City for Deployments (Part 1 of 4): Introduction

Introduction We've been using Team City for a while now to deploy our ASP.NET based applications to our development, test, and production environments.  Up until recently we had been using a combination of MSBuild, MSDeploy, and various scripting languages for this process.  These scripting languages included cmd, powershell, and rake.  The scripts would use the … Continue reading Using MSBuild and Team City for Deployments (Part 1 of 4): Introduction