Build, Release and Deploy On Demand
Some people might ask me where I have been for past couple of months. I was like damn busy with the release of a TFS extensibility solution. The solution is now released and will be available with MCS TFS engagement.
It extends the OOB TFS features with extended Build, Release and Deploy capabilities.
For Build, we extended TFS Build to provide additional OOB (Out of Box) functionality like automatic documentation, automatic packaging, and solution level versioning and signing, automatic project dependency resolution. To configure and enable all these features, we have Extensible UX wizard which even provide UI for your own features (say additional verification checks for build artifacts).
Current version of TFS doesn’t provide OOB capabilities to release a build to Dev/Test/Production environments seeking appropriate approvals before release. We extended TFS to provide OOB capabilities while defining multilevel parallel/sequential approval workflows for Release and support for auditing all activities as well.
Then we took this effort forward to automatically deploy the Approved Release Build to requested environments. This includes automated deployment to one or more servers using workflows. Also we provide complete Result Administration, Job Administration and multiple other reporting features with lot of extensibility. The name of the solution is Build, Release and Deploy, On Demand!!
Even from the next version of TFS point of view (code named Rosario), Workflow is the way to go. It provides full control on the remote machine with respect to deployment while providing OOB programming model, OOB reusability using Activities and threading, compensation and other control for deployment. We do provide OOB set of activities for Poweshell Script, Windows Script, Jscript and Batch Script execution. No more wrangling your head with arcane errors of Batch Script J