About the Author |
|
xiii | |
About the Technical Reviewer |
|
xv | |
Acknowledgments |
|
xvii | |
|
Chapter 1 Understanding the Concepts |
|
|
1 | (42) |
|
|
1 | (1) |
|
Continuous Integration (CI) |
|
|
2 | (1) |
|
|
3 | (1) |
|
|
3 | (1) |
|
|
4 | (1) |
|
Release/Deployment Pipeline |
|
|
4 | (1) |
|
TFS/VS Team Services Build & Release Management |
|
|
5 | (1) |
|
|
6 | (1) |
|
Build & Release Agents and Pipelines |
|
|
7 | (6) |
|
|
7 | (2) |
|
|
9 | (2) |
|
Security---Agent Pool---Agent Queue |
|
|
11 | (2) |
|
|
13 | (5) |
|
|
18 | (9) |
|
Security for Build & Release Definitions |
|
|
27 | (5) |
|
What Is New in Team Services Build Layouts? |
|
|
32 | (8) |
|
|
40 | (1) |
|
|
40 | (1) |
|
|
41 | (1) |
|
|
41 | (2) |
|
Chapter 2 Configuring TFS2017/VSTS Build/Release Agents & Marketplace Extensions |
|
|
43 | (40) |
|
Lesson 2.01 Set Up Agent Pools and Queues |
|
|
43 | (15) |
|
|
43 | (5) |
|
2.01.2 Set Up Agent Queue |
|
|
48 | (3) |
|
2.01.3 Auto-Provision Queues for Existing Pools |
|
|
51 | (4) |
|
2.01.4 Assign Permissions for Agent Pools and Queues |
|
|
55 | (2) |
|
2.01.5 Create Agent Pool for Build Farm |
|
|
57 | (1) |
|
Link VS Team Services Account to Azure Subscription for Billing Purposes |
|
|
58 | (1) |
|
Lesson 2.02 Set Up Build/Release Agent |
|
|
59 | (15) |
|
2.02.1 Set Up Build/Release Agent for On-Premises TFS--Interactive Mode |
|
|
60 | (4) |
|
2.02.2 Remove Windows Build/Release Agent |
|
|
64 | (1) |
|
2.02.3 Set Up Build/Release Agent for On-Premises TFS and Run as Windows Service |
|
|
64 | (2) |
|
2.02.4 Set Up Build/Release Agent in an Untrusted Domain for VS Team Services or On-Premises TFS |
|
|
66 | (3) |
|
2.02.5 Set Up Build/Release Agent in Ubuntu Linux |
|
|
69 | (5) |
|
Lesson 2.03 Install and Manage Extensions from Marketplace |
|
|
74 | (7) |
|
2.03.1 Install Extension from Marketplace |
|
|
74 | (1) |
|
|
75 | (1) |
|
2.03.3 Request an Extension |
|
|
76 | (3) |
|
2.03.4 Download Extensions for Installation |
|
|
79 | (1) |
|
2.03.5 Browse and Manage Local Extensions--On-Premises TFS |
|
|
79 | (2) |
|
|
81 | (2) |
|
Chapter 3 ASP.Net Web Application Deployment to Azure and IIS |
|
|
83 | (70) |
|
Lesson 3.01 Create ASP.Net Applications & Build with Team Foundation Builds |
|
|
83 | (40) |
|
3.01.1 Create ASP.Net MVC App in VS 2017 |
|
|
84 | (3) |
|
3.01.2 Build ASP.Net MVC App in TFS/VSTS |
|
|
87 | (19) |
|
3.01.3 Tokenize ASP.Net MVC 5 App Configurations with Build |
|
|
106 | (8) |
|
3.01.4 Create ASP.Net Core Web App in VS 2017 |
|
|
114 | (2) |
|
3.01.5 Build ASP.Net Core Web App with TFS Build |
|
|
116 | (4) |
|
3.01.6 Tokenize ASP.Net Core Web App Configurations with Build |
|
|
120 | (3) |
|
Lesson 3.02 Deploy ASP.NET Web Applications to IIS |
|
|
123 | (12) |
|
3.02.1 Deploy MVC5 Web Application to IIS |
|
|
123 | (9) |
|
3.02.2 Deploy .NET Core Web Application to IIS |
|
|
132 | (3) |
|
Lesson 3.03 Deploy ASP.NET Web Application to Azure App |
|
|
135 | (10) |
|
3.03.1 Link Azure Subscription to TFS/VSTS Team Project |
|
|
135 | (4) |
|
3.03.2 Deploy ASP .NET MVC5 Web App to Azure App Service |
|
|
139 | (4) |
|
3.03.3 Deploy ASP .NET Core Web App to Azure App Service |
|
|
143 | (2) |
|
|
145 | (8) |
|
Chapter 4 Build as Docker and Deploy to Azure |
|
|
153 | (48) |
|
Set Up the Environment to Develop Docker-enabled Application |
|
|
153 | (7) |
|
Lesson 4.01 Create a Docker-Enabled ASP.NET Core Application |
|
|
160 | (12) |
|
Lesson 4.02 Create Azure Container Registry |
|
|
172 | (5) |
|
Lesson 4.03 Create Azure App Service on Linux App |
|
|
177 | (5) |
|
Lesson 4.04 Create a Build to Push Container Image to Azure Container Registry |
|
|
182 | (10) |
|
Lesson 4.05 Wire Up Container Registry and the App Service App on Linux |
|
|
192 | (6) |
|
|
198 | (3) |
|
Azure Container Services and Team Services |
|
|
198 | (3) |
|
Chapter 5 Azure SQL and TFS/VSTS Build and Release |
|
|
201 | (18) |
|
Lesson 5.01 Create SQL Project with Visual Studio |
|
|
201 | (3) |
|
Lesson 5.02 Build SQL Project with Team Foundation Build |
|
|
204 | (4) |
|
Lesson 5.03 Deploy .dacpac to Azure SQL using TFS Release Management |
|
|
208 | (9) |
|
|
217 | (2) |
|
Chapter 6 Team Services for Azure Service Fabric Deployments |
|
|
219 | (64) |
|
|
219 | (1) |
|
Lesson 6.01 Set Up Azure Service Fabric SDK for Visual Studio |
|
|
219 | (3) |
|
Lesson 6.02 Create a Service Fabric Application and Test Locally |
|
|
222 | (20) |
|
Lesson 6.03 Create an Azure Service Fabric Cluster |
|
|
242 | (6) |
|
Lesson 6.04 Create a Build to Package the Service Fabric Application |
|
|
248 | (19) |
|
Lesson 6.05 Deploy to Azure Service Fabric Cluster |
|
|
267 | (14) |
|
|
281 | (2) |
|
Chapter 7 Task Groups, Folders, and Build/Release Definition History |
|
|
283 | (18) |
|
|
283 | (1) |
|
Lesson 7.01 Create a Task Group |
|
|
283 | (7) |
|
Lesson 7.02 Use a Task Group |
|
|
290 | (2) |
|
Lesson 7.03 Manage Task Groups |
|
|
292 | (3) |
|
Lesson 7.04 Organize Folders to Group Builds |
|
|
295 | (3) |
|
Lesson 7.05 Track Build/Release Definition History |
|
|
298 | (2) |
|
|
300 | (1) |
|
Chapter 8 Building with External Repositories and Other Platform Builds |
|
|
301 | (34) |
|
Lesson 8.01 Create a Console App and Commit It to GitHub |
|
|
301 | (9) |
|
Lesson 8.02 Link GitHub with Team Services/TFS as a Service Endpoint |
|
|
310 | (5) |
|
Lesson 8.03 Build GitHub Code in Team Foundation Build |
|
|
315 | (5) |
|
Lesson 8.04 Submit Java Code to GitHub |
|
|
320 | (6) |
|
Lesson 8.05 Build Java Code in GitHub with Team Foundation Build |
|
|
326 | (7) |
|
|
333 | (2) |
|
Chapter 9 Test Automation with Build and Release |
|
|
335 | (68) |
|
|
335 | (1) |
|
Lesson 9.01 Write Unit Tests and Integrate with Build |
|
|
336 | (6) |
|
Lesson 9.02 Write Coded Ul Tests and Package with Build |
|
|
342 | (7) |
|
Lesson 9.03 Run Functional Tests with TFS/VSTS Release |
|
|
349 | (13) |
|
Lesson 9.04 Set Up a Test Farm in Azure VMs |
|
|
362 | (28) |
|
Lesson 9.05 Run Cloud-Based Load Tests with Release Management |
|
|
390 | (12) |
|
|
402 | (1) |
|
Chapter 10 Dynamics CRM Deployments with TFS/VSTS Release |
|
|
403 | (30) |
|
Lesson 10.01 Install SDK Template for Visual Studio |
|
|
403 | (2) |
|
Lesson 10.02 Create CRM Customization Solution and Plugin |
|
|
405 | (12) |
|
Lesson 10.03 Source Control CRM Customizations |
|
|
417 | (7) |
|
Lesson 10.04 Enable CRM Customizations to Create Solution Zip with TFS Build |
|
|
424 | (5) |
|
Lesson 10.05 Deploy CRM Solution with TFS Release |
|
|
429 | (3) |
|
|
432 | (1) |
|
Chapter 11 Effective Release Notes with TFS Release |
|
|
433 | (46) |
|
What Is an Effective Release Note? |
|
|
433 | (9) |
|
Lesson 11.01 Create a Backlog |
|
|
442 | (7) |
|
Lesson 11.02 Submit Work and Create a Build |
|
|
449 | (8) |
|
Lesson 11.03 Create a Release Pipeline with Release Note Capability |
|
|
457 | (11) |
|
Lesson 11.04 Generate Release Notes for Each Environment |
|
|
468 | (10) |
|
|
478 | (1) |
|
Chapter 12 Package Management |
|
|
479 | (34) |
|
Lesson 12.01 Create a NuGet Package |
|
|
479 | (6) |
|
Lesson 12.02 Create a Feed and Publish Package in the Feed |
|
|
485 | (7) |
|
Lesson 12.03 Build and Publish Packages with TFS Builds and Release |
|
|
492 | (8) |
|
Lesson 12.04 Consume Package in Internal Feed in Visual Studio & TFS Builds |
|
|
500 | (11) |
|
|
511 | (2) |
|
Chapter 13 Extending Build and Release Tasks on Your Own |
|
|
513 | (38) |
|
Lesson 13.01 Update npm and Add Visual Studio Project Templates for TFS Extensions |
|
|
513 | (4) |
|
Lesson 13.02 Develop a Build/Release Extension and Packaging |
|
|
517 | (13) |
|
Lesson 13.03 Sign Up for Publishing Extensions in Marketplace and Publish Extension |
|
|
530 | (5) |
|
Lesson 13.04 Install Privately Shared Extension |
|
|
535 | (3) |
|
Lesson 13.05 Use the Extension in the Build/Release |
|
|
538 | (3) |
|
What Else Is Possible with Build/Release Extensions? |
|
|
541 | (7) |
|
|
548 | (3) |
Index |
|
551 | |