Just wanted to share some achievement with regards to DevOps in my engagement with one of our client. We were using a quiet good set of tools for Release Management, which I have never used before. First step was to learn those tools. Also learned the release process that was existing in their organisation. Along with my normal build and deployment activities, I was partially spending time on doing Proof of Concepts on different process improvements to the existing process and development methodology.
TFS was used as a source control system by our client and not used for build and deployment. Initially implemented the build system in TFS 2013 XAML build engine. Meanwhile Microsoft released TFS 2015 vNext build system and we urged for upgrade to TFS 2015. Once we got TFS upgraded to TFS 2015, I started playing around with TFS 2015 vNext build system and Release Management Server 2015.
Yesterday, I could successfully test the TFS 2015 and RM server integrated build and deployment through TEST, QA and UAT Servers, including the approval workflow processes. The pilot run was successful though I need to complete some activities in it. It was really awesome.
Workflow in vNext Build definition in TFS 2015.
- Build a visual studio solution.
- In case of build failure send notification to all those who has checked in after last success full build.
- Perform the unit testing.
- Publish the build artifacts to a UNC path or shared network.
- Trigger the RM Release for Test stage.(Re Usable code snippet for the same has been published in Reuse Platform. Search in Enterprise Architect focus Area)
Workflow in RM server
- Deploy the Application to Test Server.
- Validate the deployment.
- Approve the test stage of deployment.
- Deploy the Application to QA Server.
- Validate the QA deployment.
- Approve the QA stage of deployment
- Deploy the Application to UAT Server.
- Validate the UAT deployment.
- Approve the UAT stage of deployment
The Configurations in Release Management Server using RM client.
(Refer: Points to be noted before RM configuration)
- Configure/Create the environments
- Configure/Add the servers to RM.
- Create the Release Path for the APP.
- Create a component for Web Application that is to be deployed.
- Create the component for Coded UI.
- Create the power shell script for deployment.
- Create the power shell script for Coded UI. Must Read: The challenges.
I will update the site with more details soon