Page 38 - MSDN Magazine, December 15, 2017
P. 38
VISUAL STUDIO TEAM SERVICES
The Road to Continuous
Delivery with Visual Studio
Team Services
Willy-Peter Schaub
In today’s fast-paced, feature- and value-driven markets, it’s imperative that developers deliver value quickly and continuously, and react to feedback faster than the competition. Key to that effort is the practice of continuous delivery (CD), which uses continuous integration (CI) practices and automates build, test, configure and deploy activities in the DevOps cycle. CD demands that dev shops update both tooling and practices, so it’s not surprising to see many organizations asking common questions, such as:
• What is CD and how can it help deliver changes and value faster?
• What tools can you use to provision CD?
• How do you integrate various tools and cloud services
products in a CD effort?
• How do you mitigate the risk in a CD/CI pipeline?
This article aims to answer these questions, sharing insight into the lessons learned so far here at Microsoft as we practice DevOps, and explore our guidelines around CD.
It’s worth noting that there’s a subtle difference between CD and continuous deployment. Continuous deployment is suitable for teams with a high level of confidence in quality gates and are deploying known-good releases directly to a production envi- ronment. With CD, release moves through several environments, which may include functional, performance and staging tests and approvals along the way, before going to production. This article focuses on CD.
Continuous Delivery
CD is a lean practice that aims to eliminate diverging code, dupli- cation of effort and, most important, merge conflicts. It starts with CI—the process of automating the build and testing of code every time anyone commits a change to version control. When a devel- oper implements a new feature or bug fix in a feature branch, she typically submits a pull request (bit.ly/2ha4c2G) when the feature is complete. Upon approval of the pull request, changes are committed and merged into the master branch.
CD is the process to build, test, configure, deploy and confirm a feature change to production. To deliver value to users, it’s import- ant to achieve the shortest path to deploy a new feature (known as time to mitigate, or TTM) and to minimize reaction time to feedback (known as time to remediate, or TTR). The goal is to
This article discusses:
• Continuous delivery and how can it help you deliver changes and value faster
• How to use VSTS as the Azure DevOps solution and integrate with various other products
• Lessons learned at Microsoft through practice of DevOps and guidelines for continuous delivery
Technologies discussed:
Visual Studio Team Services (VSTS), Microsoft Azure Portal
34 msdn magazine