Continuous Delivery with VS2015 and TFS2015
-
Upload
tung-nguyen-thanh -
Category
Software
-
view
329 -
download
2
Transcript of Continuous Delivery with VS2015 and TFS2015
![Page 1: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/1.jpg)
Continuous Delivery with VS2015 & TFS2015
Nguyễn Thanh Tùng
![Page 2: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/2.jpg)
About me• Nguyen Thanh Tung• Technology Manager at MISA JSC• Microsoft Certified Professional Developer• Technologies:
• ASP.NET MVC/Web API• Windows UAP• Windows Forms• WCF/WPF/XAML/Silverlight• AngularJS/ExtJS/Ext.NET
• Community:• Blog at: http://tungnt.net• Facebook Page: https://www.facebook.com/tungnt185• Facebook Group: https://www.facebook.com/groups/hanoinetgroup/
![Page 3: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/3.jpg)
Table of Contents•CI/CD Introduction• CI/CD Advantages• CI/CD Practices •CI/CD with VS2015&TFS2015•Continuos Inspection with SonarQube•QA
![Page 4: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/4.jpg)
CI/CD Introduction
![Page 5: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/5.jpg)
What is CI?•CI is a software development practice:• Members of a team integrate their
work frequently• Usually each person integrates at least
daily • Leading to multiple integrations per day
•Each integration is verified by• An automated build (including test)
to detect integration errors as quickly as possible.
•Source:http://martinfowler.com/articles/continuousIntegration.html
![Page 6: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/6.jpg)
CI/CD Advantages• For development the benefit of CI/CD are:• Removed of manual copy/paste
deployment• Prevention and reduction of
production & staging errors• Generation of analysis & reporting on
the health of the code base• For operation the benefit of CI/CD are:• Reducing risk• Reducing cost across the development
& deployment process• Enhancing the reputation of the
company by providing Quality Assurance
![Page 7: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/7.jpg)
CI/CD Advantages
![Page 8: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/8.jpg)
CI Process
![Page 9: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/9.jpg)
Build
Quality Management
Development
ContinuousIntegration
1 - Maintain a Single Source Repository4 - Everyone Commits To the Mainline Every Day5 - Every Commit Should Build the Mainline on an Integration Machine
2 - Automate the Build3 - Make Your Build Self-Testing6 - Fix Broken Builds Immediately7 - Keep the Build Fast8 - Test in a Clone of the Production Environment9 - Make it Easy for Anyone to Get the Latest Executable
10 - Everyone can see what’s happening
(Source: http://www.martinfowler.com/articles/continuousIntegration.html)
CI/CD Practices
![Page 10: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/10.jpg)
CI/CD to DevOps
• DevOps practices:• Communication• Collaboration• Automation• Monitoring
![Page 11: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/11.jpg)
CI/CD with VS2015 & TFS2015
![Page 12: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/12.jpg)
TFS + Visual Studio Online
![Page 13: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/13.jpg)
TFS Build Architecture• Build Agent:• Perform actual work• Can installed on any
machine support TFS• Installed as Windows
Service• Build Pool• Contains agents• Defined on server• Have own security
permissions• Build Queue• Defined at project
collection level• Group build definitions
to specific pool
![Page 14: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/14.jpg)
CI/CD with TFS2015
Configure Build Agent
Create Build Definition
Configure CI/CD
![Page 15: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/15.jpg)
Build Agent
• VSO support one build at a time• < 30 minutes run• < 10 GB storage• 240 minutes/month
![Page 16: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/16.jpg)
Build Definition
![Page 17: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/17.jpg)
Configure CI/CD
![Page 18: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/18.jpg)
CI/CD run with real-time status
![Page 19: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/19.jpg)
Qualities management with SonarQube
![Page 20: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/20.jpg)
Using FxCop Code Analysis
/p:RunCodeAnalysis=True /p:CodeAnalysisRuleSet=AllRules.ruleset
![Page 21: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/21.jpg)
SonarQube
• Sonarqube is an open source quality management platform, dedicated to continuous analyze and measure source code quality => continuous inspection
• http://www.sonarqube.org/
![Page 22: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/22.jpg)
SonarQube
![Page 23: Continuous Delivery with VS2015 and TFS2015](https://reader030.fdocuments.us/reader030/viewer/2022011721/587a170e1a28abb4238b55ad/html5/thumbnails/23.jpg)
Thanks for your listening!
Q&A?