Over a million developers have joined DZone.

Continuous Delivery for .NET - Go 12.1 Adds Direct TFS Support

DZone's Guide to

Continuous Delivery for .NET - Go 12.1 Adds Direct TFS Support

· DevOps Zone ·
Free Resource

DevOps involves integrating development, testing, deployment and release cycles into a collaborative process. Learn more about the 4 steps to an effective DevSecOps infrastructure.

The latest incremental release of Go, ThoughtWorks Studio's platform for automated build and continuous integration/delivery, has one major new feature that will bring DevOps-y goodness to a whole new ecosystem of developers.  I'm talking about .NET developers, and the new feature is direct support for Team Foundation Server (TFS) source control as a source of materials.

This means that Microsoft's push for the integration of its own DevOps-ified tools, like Microsoft Operations Manager (now integrated in VS11), might have some competition from outsiders like ThoughtWorks or UrbanCode, who specialize in making the build-test-deploy cycle painless.

From the PR and the Blog Story:

Users can trace deployments back to changesets in TFS. They can also compare pipelines to determine which TFS changesets get deployed.

“We’ve heard from numerous .Net development teams of their need for a improved software deployment process – from build to deployment. With this announcement, they have a very desirable alternative to TFS for builds”, said Chad Wathington, Vice President of Product for ThoughtWorks Studios. “In addition, these teams can have practical tool support for Continuous Delivery – enabling predictable, reliable, and repeatable deployment process.”  --Press Release

And these were some of the simple stages that take place specifically with the TFS integration.

  • The compile-build stage runs a job that executes MSBuild from a batch file.
  • Stage two, automated API testing, runs MSTest over the test library artifact produced by the compile-build stage. This stage is also configured with a job running a Custom Command that calls a batch file
  • The final stage, publish, uses TFS’s command line tool, tf.exe, to label the source tree using the value of GO_PIPELINE_LABEL. The value of the environment variable is passed in as a parameter.

If you've been following the releases of Go, you'll be asking yourself - "How did Go suddenly it version 12.x!?" Well, according to the PR, Go is going to have even more frequent releases with modular functionalites being added.  And so they adopted a new naming convention based on year, so 12 stands for 2012 and the .1 stands for the first release of this year.

You can download Go Community Editon for Free.

Read the 4-part DevOps testing eBook to learn how to detect problems earlier in your DevOps testing processes.


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}