43
Vincent Biret Setting Up your Release Pipeline for SharePoint/Office 365 in Azure

#Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Embed Size (px)

Citation preview

Page 1: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Vincent Biret

Setting Up your Release Pipeline for SharePoint/Office 365 in Azure

Page 2: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

2 | SharePoint Saturday Calgary – 23 APR 2016

Sponsors

CalSPOUG

Page 3: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

3 | SharePoint Saturday Calgary – 23 APR 2016

About MeVincent BIRETOffice Servers And Services [email protected]/vince365

Products Team Tech Lead

Montreal

Page 4: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

4 | SharePoint Saturday Calgary – 23 APR 2016

Who’s that session for?

Page 5: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

5 | SharePoint Saturday Calgary – 23 APR 2016

Session’s Objectives

High-level understanding of ALM

Being able to set up builds for SP projects

Being able to set up RM for Apps

High-level understanding of testing/QA

Technical Debt Management

Page 6: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

6 | SharePoint Saturday Calgary – 23 APR 2016

Agenda Intro to Software lifecycle Intro to VSTS/Azure The build system High-level intro to deploy and

tests for SP Intro to tech debt management Conclusion

Page 7: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Software Lifecycle

WHERE IT ALL BEGINS

Page 8: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

8 | SharePoint Saturday Calgary – 23 APR 2016

Software lifecycle : devops

Plan

Dev

Test

Production

Idea/Need

Business Plan

Marketing Sales

Market

Feedback Agile/CMMI/…Architecture

Source ControlIDEBuild

xTests

Page 9: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Visual Studio Team Services and Azure

LET’S TALK ABOUT TOOLING

Page 10: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

10 | SharePoint Saturday Calgary – 23 APR 2016

Microsoft’s Cloud platform IaaS, PaaS, SaaSLiteraly tons of servicesYou’ve probably heard about it

Page 11: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

11 | SharePoint Saturday Calgary – 23 APR 2016

Visual Studio Team Services

TFS as a service Updated more

frequently Pay per user/build

Everything except SharePoint Integration Process Template

Customization** Data Warehouse

Page 12: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Build

LET’S INCREASE THE QUALITY OF RELEASES

Page 13: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

13 | SharePoint Saturday Calgary – 23 APR 2016

Automated builds

Predictable resultConstant qualityTime saving

Page 14: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

14 | SharePoint Saturday Calgary – 23 APR 2016

Build Hard to debug Only editable with VS Requires Controller + Agent Updates not automated Third party tools hard to integrate

Page 15: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

15 | SharePoint Saturday Calgary – 23 APR 2016

Build 2015

JSON definitionWeb editionLot of third parties integrations

Tasks on github! (see notes)Agent auto updates!

Page 16: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

16 | SharePoint Saturday Calgary – 23 APR 2016

Agents Hosted Agents

BaaS

Installed Agents Azure, or anywhere else

Page 17: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Demo

BUILD SECTION, BUILD AGENTS 2015

Page 18: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Deploy

AUTOMATE ALL THE THINGS!

Page 19: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

19 | SharePoint Saturday Calgary – 23 APR 2016

Available Options**

Page 20: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

20 | SharePoint Saturday Calgary – 23 APR 2016

FTC deployment Easy to automate

PowerShell is your friend

Page 21: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

21 | SharePoint Saturday Calgary – 23 APR 2016

Apps Deployment SharePoint Hosted

Provider Hosted

Page 22: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

22 | SharePoint Saturday Calgary – 23 APR 2016

Targets

Page 23: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

23 | SharePoint Saturday Calgary – 23 APR 2016

Should SPFarm be created on build machine?

Pros Deployment easier Unit testing easier

Cons Heavier footprint Can impact build

Page 24: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Demo

LAPRESSE AND OCEANIK DEPLOYMENT WITH RM

Page 25: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Test

FINAL TOUCH TO QA

Page 26: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

26 | SharePoint Saturday Calgary – 23 APR 2016

Tests levels

Unit testingLoad testing Integration testingSystem testingFunctional/Acceptance testing

Page 27: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

27 | SharePoint Saturday Calgary – 23 APR 2016

Tests types

InstallationCompatibility

RegressionDestructive

SecurityL17N/I13NA/B…..

Page 28: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

28 | SharePoint Saturday Calgary – 23 APR 2016

Testing tools

MstestNunitxUnitGruntGulp…

Page 29: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

29 | SharePoint Saturday Calgary – 23 APR 2016

Testing in the SharePoint World

Provisioning modelComplexClosed

OM hard to emulate/test against

Page 30: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

30 | SharePoint Saturday Calgary – 23 APR 2016

Tests with FTC

Almost impossibleComes at great investments

Page 31: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

31 | SharePoint Saturday Calgary – 23 APR 2016

Tests with Apps

Easy for everything out of SharePoint

Harder for SP-Hosted Apps

Page 32: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Demo

UNIT TESTS OF LAPRESSE

Page 33: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Technical debt management

OR HOW TO AVOID DIGGING YOUR OWN GRAVE

Page 34: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

34 | SharePoint Saturday Calgary – 23 APR 2016

What is tech debt?

Code we’re not comfortable with

Preventing us from innovatingCausing a lot of supportStressful for the team

Page 35: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

35 | SharePoint Saturday Calgary – 23 APR 2016

Solutions?

Rewrite everything every 2 years

Pair codingStatic analysis

Page 36: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Demo

SONARQUBE FOR OCEANIK

Page 37: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Conclusion

TIME TO SAY GOODBYE

Page 38: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

38 | SharePoint Saturday Calgary – 23 APR 2016

Conclusion

Lot of time savedConsistent buildsAutomated testsQuality increasedMoney saved

Page 39: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Questions & Answers / Thanks

Vincent Biret, @baywet, bit.ly/vince365 [email protected]

Page 40: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

40 | SharePoint Saturday Calgary – 23 APR 2016

Sponsors

CalSPOUG

Page 41: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Useful Resources

Page 42: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

The Microsoft Press Store

SAVE 40% on print books with code

MSUSERGROUPSAVE 50% on eBooks with code

MSUGEBOOK

*Codes can not be combined with another offer or eBook Deal of the Week feature titles.

Visit microsoftpressstore.com today!

Page 43: #Spscalgary 2016 Setting up your release pipeline for SharePoint in Azure

Housekeeping Join us for SharePint, Networking and Expo

Time: 3:05pm - 6:00pm Complimentary appetizers and cash bar