TFS functions enhanced and simplified using the TFS ASAP
With the Release Management for Visual Studio a new TFS component is available to roll out the results of a build process to the staging- or production environment. Even the realization of a complex publishing process is possible.
But is it really necessary to have a complex server solution if you just want to copy the compiled binaries to a specific folder and send an e-mail afterwards? Does this simple requirement justify to upgrade to the latest TFS version?
As a simple alternative it is possible to use an existing TFS function in combination with a rule of the TFS Automated Servicing & Administration Platform.
A TFS function that is hardly used in practice is the possibility to mark a build with a quality flag.
The selection could get adjusted according to your needs using the Visual Studio -> Build -> Manage Build Qualities menu.
After setting a new quality on a build a server side event is raised by the TFS which is handled by TFS ASAP.
The actions which should get performed are defined within a configuration file within the mapped source control branch.
Tasks are defined for each quality that should get handled.
In the shown configuration for example the target “DeployTestVersion” in the MSBuild script file “Deploy.targets” should get executed as soon as the quality is set to „Ready For Initial Test“.
Within the script all common MSBuild commands including all the available extensions can be used. Even complex scenarios can be realized thereby. Simple tasks like copying the build output to a file share requires only a few lines.
All configuration and script files are under version control. That makes it possible to deploy also a previous release.
It is a small extension through the TFS Automated Servicing & Administration Platform with great effect! Providing the latest stable version for the test team was never that easy before.