Microsoft Team Foundation Server Build 2015
-
Upload
chris-kadel-mba -
Category
Technology
-
view
504 -
download
2
Transcript of Microsoft Team Foundation Server Build 2015
TFS 2015 Bu i ldExtravaganza Build
Who Am I?
President & CEO of Polaris SolutionsProfessional Scrum MasterCertified SAFe Program Consultant
Change Software Delivery for the Better.
Chris Kadel
This is the most Substantial change in build to Team Foundation Server in a decade
MsBuild
MsBuild with More
Extensibility
MSBuild with XAML
MSBuild with XAML
Simplified MSBuild
with XAML
2005 2008 2010 2012 2013 2015
Build vNext
Versions
RIP
XAML Builds
Difficult to Debug
Difficult for VS to Open
Difficult to Navigate
Graphical
Flexible
Accessible to More Devs
Build Automation is an incredible enabler to robust DevOps Culture.
Requirements
Design
Develop
Test
Deploy
Monitor
User Feedback
Prioritize
1980
https://flic.kr/p/c9gpSA
https://flic.kr/p/rcGHG2
2015
18 Mos.
18 Mins.
Achieving throughput is going to require build automation to be as low friction as possible.
https://flic.kr/p/4zZkjG
We Do Manual Builds / Deploy to Test
8 Hours * 4 Times Per Month * 4 People
= $76,800 Year
We Author Builds in XAML We Support our XAML Builds
40 Hours $2000 / App
20 Hours * 1 person * 12 months $12,000 / Year / Apphttps://flic.kr/p/fG2vpZ
75K / Year / App
14K / Year / App
Make Authoring and Support Easier
Lower “Barrier to Entry” to Automate1 2
A Week To Set Up Team Looses 4 Weeks/Year due to Complexity
* Slide Based on Actual Consulting Experiences
Broader platform support means rethinking build architecture in TFS.
Team Project Collection Build Controller
1:1
Agent 1
Agent 2
Agent N
…
Not True High Availability
Windows Server/Desktop
TFS Server
The Old Architecture…
Broader Support
1:1
Broader platform support means rethinking build architecture in TFS.
The New Architecture…
Broader Support
TFS Project Collection
Pool Agents
Build Def 1
Build Def 2
Agent 1
Agent 2
Agent 3
Agent 4
Agent 5
Agent 6
Pool A
Pool B
Pool C
Agent Belongs to One Pool
Agent Belongs to One Pool
Pools Have Own Administrators(Decentralization of Authority)
TFS Project Collection
Build Def 3
Build Def 4
Queue A
Queue B
Queue C
Queues Have One Target
What can we overlay on top of that agent/pool architecture?
.NET (MSBUILD)
The Old Architecture…Windows Workflow
FoundationXAML
Out of the Box
Customization (Sometimes Heavy)
Command Line Java (ant/maven) PowerShell Invoke
… anything Invoked on Windows
Broader Support
What can we overlay on top of that agent/pool architecture?
.NET (MSBUILD)
The New Architecture…
Web Configuration
Out of the Box
Customization (Sometimes Heavy)
Command Line
Java (ant/maven)
PowerShell Invoke
… anything Invoked on Windows Gulp
XCode Xamarin… Many Others
Broader Support
All of that new architecture means greater flexibility for setting up automation.
https://goo.gl/El1s0C
Choose Your Platform
Choose Your Tools
Install an Agent
Broader Support
Demonstrat ionTeam foundation server agents/pools
Make Authoring and Support Easier
Lower “Barrier to Entry” to Automate1 2
Simplification in authoring of builds was a key design principle for build 2015.
Authoring
https://goo.gl/nhP6zK
Visual Studio Not Required
There’s an “App” for that – Mentality.
Audit Logs
http://goo.gl/gpmbk7
https://goo.gl/f0si63
Testing has been augmented to allow ci unit tests and lab type tests on build
Build Run Unit Tests
Build Run Unit Tests Deploy Run Functional Testing
Test Adapters Available for nUnit, xUnit
Build
Now you can build, test, and launch (deploy) easily.
https://goo.gl/EmX7iM
Promote the CodePromote the Bits
Dev
Test
Prod
Branches (SCM)
Build - Dev
Build - Test
Build - Prod
Builds (TFS)
Fast to Implement
“New” code is being tested for the first time.
Some auditing requirements would fail this.
Good for “getting started” and “smaller groups”
Main/Trunk10101
10101
10101
10101
Deploy
Release Mgt
Sometimes more complex
Code is tested in each environment
Good for maturing organizations.
Demonstrat ionCreating a Build
Platinum Sponsors
Silver Sponsors
Gold Sponsors
Thank you.Twitter: @cbkadelEmail: [email protected]