Question

When releasing to a test or production environment, this is our current procedure:

  1. Update AssemblyInfo version numbers
  2. Ensure the relevant build is successful on Visual Studio Team Services
  3. On a local machine, get specific version by label (the label of the successful build)
  4. Publish from the Cloud Project to the Web Role
  5. Compare and merge database schemas from Database Project
  6. Run data scripts into database

This is a very manual and cumbersome process.

Is there any way to release labelled code directly from Team Services? We don't want continuous integration, we only want controlled version releases.

What about release changes from a Database Project? Will this always be a manual process or is there a decent way to automate it?

Note: We are using Visual Studio Team Services and Visual Studio 2013.

Was it helpful?

Solution

Step 2 to 4 are out-of-the-box in VS Team Services. Just setup a continuous integration build from Azure Management Portal and then edit the Build Definition in VS to be manually triggered instead of check-in triggered. The code is automatically labelled by default on each automated build.

You can also automate step 1 but is not out-of-the-box. See http://tfsbuildextensions.codeplex.com/wikipage?title=How%20to%20integrate%20the%20TfsVersion%20build%20activity&referringTitle=Documentation

About Database deployment check out this: http://www.codewrecks.com/blog/index.php/2009/10/06/deploy-a-database-project-with-tfs-build/

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top