SlideShare a Scribd company logo
1 of 62
Release Management with Visual Studio
Team Services and Office Dev PnP
Petter Skodvin-Hvammen
Principal Consultant, Puzzlepart, Norway
@pettersh | skodvinhvammen.wordpress.com | pettersh@puzzlepart.com
Session Goals
1. Introduction to Release Management
2. How does it work in Visual Studio Team Services
3. Introduction to Office Dev PnP
4. How can we release to SharePoint (and other)
There will be plenty of examples and demos...
What is Release Management?
“Release management is the
process of managing, planning,
scheduling and controlling a
software build through different
stages and environments; including
testing and deploying software
releases”
https://en.wikipedia.org/wiki/Release_management
In Visual Studio Team Services
Service that helps you automate the
deployment and testing of your
software in multiple environments.
Why Release Management?
• You spend to much time on planning and deploying
changes
• There are too many manual steps
risk of failure
• It is not clear what feature or fix is released to which
environment
• One-click deploy to all of your environments on-
demand
• Schedule deployments
• Automatically deploy when code changes
• Roll back to previous version easily
• Control who can release to each environment
• Track the releases across environments
Release Definitions
Specifications of
• What to deploy? Artefacts
• Where to deploy? Environments
• How to deploy? Tasks
What to Deploy?
• Build server outputs:
• Team Services (VSTS)
• Team Foundation Server (TFS)
• Jenkins
• TeamCity
• Version control sources:
• TFVC, Git and GitHub
• Other sources:
• NuGet
• PowerShell
• Cmd and Shell
Where to Deploy?
• Environments
• Environment Templates
• Approvals and approvers
• Environment Variables
• Deployment Triggers
• Queueing Policies
How to Deploy?
https://www.visualstudio.com/en-us/docs/build/define/build
Custom build tasks/extensions
https://www.visualstudio.com/en-
us/docs/integrate/extensions/devel
op/add-build-task
http://blog.devmatter.com/custom-
build-tasks-in-vso
DEMO
Office 365 Dev Patterns &
Practices (PnP)
https://github.com/OfficeDev/PnP-Sites-Core
https://github.com/OfficeDev/PnP-PowerShell
https://github.com/OfficeDev?query=office-ui-fabric (http://dev.office.com/fabric)
Office 365 Developer
PnP Core Component
https://github.com/OfficeDev/PnP-Sites-Core
• .NET library aimed to ease working with CSOM/REST api
• If you prefer Configuration as Code (using C#)
• Available as NuGet package
Configuration as Code
Office 365 Developer
PnP PowerShell Component
https://github.com/OfficeDev/PnP-PowerShell
• PowerShell commands for working with SharePoint Online and On-Premises
• If you prefer Configuration by Declaration (using XML/JSON)
• Available from the PowerShell gallery using the PowerShellGet module
Declarative Configuration
Build and Release
using Office Dev PnP
1. Code in VSTS Git, continuous build/deploy, hosted agent, PnP-Sites-Core
2. Code in GitHub, no build, scheduled deploy, hosted agent, PnP-PowerShell
3. Code in BitBucket, nightly build/deploy, agent in Azure, PnP-PowerShell
DEMO
Scenario 1
• Code in https://pettersh.visualstudio.com/espc16
• Continuous builds (on commit)
• Continuous deploy (on successful build)
• Cloud hosted VSTS agent
• Provisioning using PnP-Sites-Core
DEMO
Scenario 2
• Code in https://github.com/pskodvin/espc16-github
• No builds (no triggers defined)
• Scheduled deploy
• Cloud hosted VSTS agent
• Provisioning using PnP-PowerShell
DEMO
Scenario 3
• Code in https://bitbucket.org/puzzlepart/hoegh-o365-intranet
• Scheduled builds
• Continuous deploy (on successful build)
• Azure hosted VSTS agent
• Provisioning using PnP-PowerShell
Relevant Topics
Some related thoughts and ideas worth considering
• Automatically create labels, tags or branches
• Automatically relase when a pull request is accepted and successfully built
• Automatically provision or decommission virtual machines using ARM
• Automatically create news, blog posts, SharePoint items, Yammer posts,…
• Deploy to
• SharePoint on-premises
• Azure web jobs
• Provider hosted apps
• Microsoft graph
Summary
• Visual Studio Team Services
• Build and Release Management
• Office Development Patterns & Practices (PnP)
puzzlepart.com
Twitter: @pettersh
Blog: skodvinhvammen.wordpress.com
Email: pettersh@puzzlepart.com
Backup slides
In case of connectivity issues (oh nooooo….)
Scenario: Continuous Build and Deploy using PnP Core
Code in VSTS Git, Hosted agent
Scenario: No Build, Scheduled Deploy using PnP-PowerShell
Code in GitHub, Hosted build agent
Scenario: Scheduled Build and Deploy using PnP-PowerShell
Code in BitBucket, Build agent in Azure VM
PnP-PowerShell on a
hosted build agent
• Windows Server 2012 R2, 64-bit, with Windows PowerShell 4.0
• PnP-PowerShell is NOT installed!
• How to install PnP-PowerShell?
• Install-Module (requires PowerShell 5.0/5.1)
• Installer MSI from https://github.com/OfficeDev/PnP-PowerShell/releases
• Clone https://github.com/OfficeDev/PnP-PowerShell.git or download zip
PnP-PowerShell on your
own build agent
Setup as a Virtual Machine in Azure
• Windows Server 2012 R2, 64-bit, with Windows PowerShell 4.0
• Install PnP-PowerShell from PowerShell Gallery or using MSI from GitHub
https://github.com/OfficeDev/PnP-PowerShell/releases
• Install other requirements like Node.js, NPM, Typings, Gulp, etc….
• Install
https://github.com/Microsoft/vsts-agent/releases/download/v2.108.0/vsts-agent-win7-x64-2.108.0.zip

More Related Content

What's hot

TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsMichael Lihs
 
Using Grunt with Drupal
Using Grunt with DrupalUsing Grunt with Drupal
Using Grunt with Drupalarithmetric
 
Working in Harmony: Manchester - Optimize development and content workflows
Working in Harmony: Manchester - Optimize development and content workflowsWorking in Harmony: Manchester - Optimize development and content workflows
Working in Harmony: Manchester - Optimize development and content workflowsEdmund Turbin
 
Intro to Service Worker API and its use cases
Intro to Service Worker API and its use casesIntro to Service Worker API and its use cases
Intro to Service Worker API and its use casessatejsahu
 
Building a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual StudioBuilding a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual StudioKasun Kodagoda
 
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDKBuilding Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDKKasun Kodagoda
 
Slim PHP when you don't need the kitchen sink
Slim PHP   when you don't need the kitchen sinkSlim PHP   when you don't need the kitchen sink
Slim PHP when you don't need the kitchen sinkJoe Ferguson
 
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)Alvaro Sanchez-Mariscal
 
AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?Rob Brown
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIEdmund Turbin
 
Nürnberg WooCommerce Talk - 11/24/16
Nürnberg WooCommerce Talk - 11/24/16Nürnberg WooCommerce Talk - 11/24/16
Nürnberg WooCommerce Talk - 11/24/16tshellberg
 
Engage 2019 Software documentation is fun if you have the right tools: Introd...
Engage 2019 Software documentation is fun if you have the right tools: Introd...Engage 2019 Software documentation is fun if you have the right tools: Introd...
Engage 2019 Software documentation is fun if you have the right tools: Introd...AndrewMagerman
 
Modern infrastructure as code with ansible cake fest 2021
Modern infrastructure as code with ansible cake fest 2021Modern infrastructure as code with ansible cake fest 2021
Modern infrastructure as code with ansible cake fest 2021Joe Ferguson
 
Engage 2019 - De04. Java with Domino After XPages
Engage 2019 - De04. Java with Domino After XPagesEngage 2019 - De04. Java with Domino After XPages
Engage 2019 - De04. Java with Domino After XPagesJesse Gallagher
 
Story Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium FrameworkStory Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium FrameworkOleksiy Rezchykov
 
The New Frontend Toolchain
The New Frontend ToolchainThe New Frontend Toolchain
The New Frontend ToolchainBruno Abrantes
 

What's hot (20)

TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
 
Using Grunt with Drupal
Using Grunt with DrupalUsing Grunt with Drupal
Using Grunt with Drupal
 
Working in harmony
Working in harmonyWorking in harmony
Working in harmony
 
Working in Harmony: Manchester - Optimize development and content workflows
Working in Harmony: Manchester - Optimize development and content workflowsWorking in Harmony: Manchester - Optimize development and content workflows
Working in Harmony: Manchester - Optimize development and content workflows
 
Intro to Service Worker API and its use cases
Intro to Service Worker API and its use casesIntro to Service Worker API and its use cases
Intro to Service Worker API and its use cases
 
Building a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual StudioBuilding a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual Studio
 
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDKBuilding Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
 
Slim PHP when you don't need the kitchen sink
Slim PHP   when you don't need the kitchen sinkSlim PHP   when you don't need the kitchen sink
Slim PHP when you don't need the kitchen sink
 
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
 
AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?AgileDC15 I'm Using Chef So I'm DevOps Right?
AgileDC15 I'm Using Chef So I'm DevOps Right?
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLI
 
DevOps Unicorns
DevOps UnicornsDevOps Unicorns
DevOps Unicorns
 
Automated Testing in DevOps
Automated Testing in DevOpsAutomated Testing in DevOps
Automated Testing in DevOps
 
Nürnberg WooCommerce Talk - 11/24/16
Nürnberg WooCommerce Talk - 11/24/16Nürnberg WooCommerce Talk - 11/24/16
Nürnberg WooCommerce Talk - 11/24/16
 
Engage 2019 Software documentation is fun if you have the right tools: Introd...
Engage 2019 Software documentation is fun if you have the right tools: Introd...Engage 2019 Software documentation is fun if you have the right tools: Introd...
Engage 2019 Software documentation is fun if you have the right tools: Introd...
 
Modern infrastructure as code with ansible cake fest 2021
Modern infrastructure as code with ansible cake fest 2021Modern infrastructure as code with ansible cake fest 2021
Modern infrastructure as code with ansible cake fest 2021
 
Engage 2019 - De04. Java with Domino After XPages
Engage 2019 - De04. Java with Domino After XPagesEngage 2019 - De04. Java with Domino After XPages
Engage 2019 - De04. Java with Domino After XPages
 
Story Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium FrameworkStory Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium Framework
 
The New Frontend Toolchain
The New Frontend ToolchainThe New Frontend Toolchain
The New Frontend Toolchain
 
OpenNTF Essentials
OpenNTF EssentialsOpenNTF Essentials
OpenNTF Essentials
 

Viewers also liked

How did it go? The first large enterprise search project in Europe using Shar...
How did it go? The first large enterprise search project in Europe using Shar...How did it go? The first large enterprise search project in Europe using Shar...
How did it go? The first large enterprise search project in Europe using Shar...Petter Skodvin-Hvammen
 
The new way to extend VSTS Build and Release
The new way to extend VSTS Build and ReleaseThe new way to extend VSTS Build and Release
The new way to extend VSTS Build and ReleaseJesse Houwing
 
Mundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshooting
Mundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshootingMundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshooting
Mundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshootingBruno Lopes
 
Biweek Mineração de Dados com SQL Server
Biweek   Mineração de Dados com SQL ServerBiweek   Mineração de Dados com SQL Server
Biweek Mineração de Dados com SQL ServerRodrigo Dornel
 
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in AzureSPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in AzureVincent Biret
 
SharePoint Saturday Houston Setting up your release pipeline with Azure
SharePoint Saturday Houston Setting up your release pipeline with AzureSharePoint Saturday Houston Setting up your release pipeline with Azure
SharePoint Saturday Houston Setting up your release pipeline with AzureVincent Biret
 
Visual Studio Team Services 新機能使い倒し
Visual Studio Team Services 新機能使い倒しVisual Studio Team Services 新機能使い倒し
Visual Studio Team Services 新機能使い倒しTakashi Takebayashi
 
AzureDay Kyiv 2016 Release Management
AzureDay Kyiv 2016 Release ManagementAzureDay Kyiv 2016 Release Management
AzureDay Kyiv 2016 Release ManagementSergii Kryshtop
 
AIAのまちづくり
AIAのまちづくりAIAのまちづくり
AIAのまちづくりrika_hrtj
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTSMicrosoft Iceland
 
SharePoint 2010 Workflows
SharePoint 2010 WorkflowsSharePoint 2010 Workflows
SharePoint 2010 WorkflowsPhil Wicklund
 
Criando indicadores de time com VSTS e POWER BI
Criando indicadores de time com VSTS e POWER BICriando indicadores de time com VSTS e POWER BI
Criando indicadores de time com VSTS e POWER BIAdriano Bertucci
 
What is datavisualization?
What is datavisualization?What is datavisualization?
What is datavisualization?Stephane Nardin
 
[Vssummit] DevOps - Release Management VSTS
[Vssummit]   DevOps - Release Management VSTS[Vssummit]   DevOps - Release Management VSTS
[Vssummit] DevOps - Release Management VSTSLeandro Prado
 
Overcoming the challenges of Office 365 user management in hybrid environments​
Overcoming the challenges of Office 365 user management in hybrid environments​Overcoming the challenges of Office 365 user management in hybrid environments​
Overcoming the challenges of Office 365 user management in hybrid environments​Zoho Corporation
 
O365 Groups- Best Practices and Solutions
O365 Groups- Best Practices and SolutionsO365 Groups- Best Practices and Solutions
O365 Groups- Best Practices and SolutionsJohnConnected
 
Understanding Office 365 Groups: Ask The Experts
Understanding Office 365 Groups: Ask The ExpertsUnderstanding Office 365 Groups: Ask The Experts
Understanding Office 365 Groups: Ask The ExpertsDux Raymond Sy
 
10 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 36510 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 365Richard Harbridge
 
DevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft AzureDevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft Azuregjuljo
 
Office 365 presentation
Office 365 presentationOffice 365 presentation
Office 365 presentationSaed Shela
 

Viewers also liked (20)

How did it go? The first large enterprise search project in Europe using Shar...
How did it go? The first large enterprise search project in Europe using Shar...How did it go? The first large enterprise search project in Europe using Shar...
How did it go? The first large enterprise search project in Europe using Shar...
 
The new way to extend VSTS Build and Release
The new way to extend VSTS Build and ReleaseThe new way to extend VSTS Build and Release
The new way to extend VSTS Build and Release
 
Mundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshooting
Mundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshootingMundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshooting
Mundo TI - Office 365 da estratégia de deploy até os detalhes de troubleshooting
 
Biweek Mineração de Dados com SQL Server
Biweek   Mineração de Dados com SQL ServerBiweek   Mineração de Dados com SQL Server
Biweek Mineração de Dados com SQL Server
 
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in AzureSPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
 
SharePoint Saturday Houston Setting up your release pipeline with Azure
SharePoint Saturday Houston Setting up your release pipeline with AzureSharePoint Saturday Houston Setting up your release pipeline with Azure
SharePoint Saturday Houston Setting up your release pipeline with Azure
 
Visual Studio Team Services 新機能使い倒し
Visual Studio Team Services 新機能使い倒しVisual Studio Team Services 新機能使い倒し
Visual Studio Team Services 新機能使い倒し
 
AzureDay Kyiv 2016 Release Management
AzureDay Kyiv 2016 Release ManagementAzureDay Kyiv 2016 Release Management
AzureDay Kyiv 2016 Release Management
 
AIAのまちづくり
AIAのまちづくりAIAのまちづくり
AIAのまちづくり
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTS
 
SharePoint 2010 Workflows
SharePoint 2010 WorkflowsSharePoint 2010 Workflows
SharePoint 2010 Workflows
 
Criando indicadores de time com VSTS e POWER BI
Criando indicadores de time com VSTS e POWER BICriando indicadores de time com VSTS e POWER BI
Criando indicadores de time com VSTS e POWER BI
 
What is datavisualization?
What is datavisualization?What is datavisualization?
What is datavisualization?
 
[Vssummit] DevOps - Release Management VSTS
[Vssummit]   DevOps - Release Management VSTS[Vssummit]   DevOps - Release Management VSTS
[Vssummit] DevOps - Release Management VSTS
 
Overcoming the challenges of Office 365 user management in hybrid environments​
Overcoming the challenges of Office 365 user management in hybrid environments​Overcoming the challenges of Office 365 user management in hybrid environments​
Overcoming the challenges of Office 365 user management in hybrid environments​
 
O365 Groups- Best Practices and Solutions
O365 Groups- Best Practices and SolutionsO365 Groups- Best Practices and Solutions
O365 Groups- Best Practices and Solutions
 
Understanding Office 365 Groups: Ask The Experts
Understanding Office 365 Groups: Ask The ExpertsUnderstanding Office 365 Groups: Ask The Experts
Understanding Office 365 Groups: Ask The Experts
 
10 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 36510 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 365
 
DevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft AzureDevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft Azure
 
Office 365 presentation
Office 365 presentationOffice 365 presentation
Office 365 presentation
 

Similar to Release Management with Visual Studio Team Services and Office Dev PnP

Branding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnPBranding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnPThomas Daly
 
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 DevelopmentSharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 DevelopmentSébastien Levert
 
SharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 DevelopmentSébastien Levert
 
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flowVincent Biret
 
Introduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure FunctionsIntroduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure FunctionsBIWUG
 
Branding office 365 with front end tooling
Branding office 365 with front end toolingBranding office 365 with front end tooling
Branding office 365 with front end toolingThomas Daly
 
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...Sébastien Levert
 
#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devops#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devopsVincent Biret
 
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas VochtenO365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas VochtenNCCOMMS
 
Introduction to Office Development Topics
Introduction to Office Development TopicsIntroduction to Office Development Topics
Introduction to Office Development TopicsHaaron Gonzalez
 
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 developmentSharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 developmentSébastien Levert
 
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 Development
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 DevelopmentSharePoint Saturday Calgary 2017 - From SharePoint to Office 365 Development
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
SharePoint Fest DC 2018 - From SharePoint to Office 365 Development
SharePoint Fest DC 2018 - From SharePoint to Office 365 DevelopmentSharePoint Fest DC 2018 - From SharePoint to Office 365 Development
SharePoint Fest DC 2018 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
ESPC Webinar - From SharePoint to Office 365 Development
ESPC Webinar - From SharePoint to Office 365 DevelopmentESPC Webinar - From SharePoint to Office 365 Development
ESPC Webinar - From SharePoint to Office 365 DevelopmentSébastien Levert
 
Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...
Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...
Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...BIWUG
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
SPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 developmentSPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 developmentSébastien Levert
 

Similar to Release Management with Visual Studio Team Services and Office Dev PnP (20)

Branding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnPBranding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnP
 
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 DevelopmentSharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
 
SharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 Development
 
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
 
Introduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure FunctionsIntroduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure Functions
 
Branding office 365 with front end tooling
Branding office 365 with front end toolingBranding office 365 with front end tooling
Branding office 365 with front end tooling
 
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
 
#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devops#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devops
 
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas VochtenO365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
 
Introduction to Office Development Topics
Introduction to Office Development TopicsIntroduction to Office Development Topics
Introduction to Office Development Topics
 
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
 
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 developmentSharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
 
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 Development
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 DevelopmentSharePoint Saturday Calgary 2017 - From SharePoint to Office 365 Development
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 Development
 
SharePoint Fest DC 2018 - From SharePoint to Office 365 Development
SharePoint Fest DC 2018 - From SharePoint to Office 365 DevelopmentSharePoint Fest DC 2018 - From SharePoint to Office 365 Development
SharePoint Fest DC 2018 - From SharePoint to Office 365 Development
 
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
 
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
 
ESPC Webinar - From SharePoint to Office 365 Development
ESPC Webinar - From SharePoint to Office 365 DevelopmentESPC Webinar - From SharePoint to Office 365 Development
ESPC Webinar - From SharePoint to Office 365 Development
 
Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...
Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...
Yo Office! Use your SPFx Skills to Build Add-Ins for Word, Excel, Outlook and...
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
SPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 developmentSPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 development
 

Recently uploaded

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 

Recently uploaded (20)

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 

Release Management with Visual Studio Team Services and Office Dev PnP

  • 1.
  • 2. Release Management with Visual Studio Team Services and Office Dev PnP Petter Skodvin-Hvammen Principal Consultant, Puzzlepart, Norway @pettersh | skodvinhvammen.wordpress.com | pettersh@puzzlepart.com
  • 3. Session Goals 1. Introduction to Release Management 2. How does it work in Visual Studio Team Services 3. Introduction to Office Dev PnP 4. How can we release to SharePoint (and other) There will be plenty of examples and demos...
  • 4. What is Release Management? “Release management is the process of managing, planning, scheduling and controlling a software build through different stages and environments; including testing and deploying software releases” https://en.wikipedia.org/wiki/Release_management In Visual Studio Team Services Service that helps you automate the deployment and testing of your software in multiple environments.
  • 5. Why Release Management? • You spend to much time on planning and deploying changes • There are too many manual steps risk of failure • It is not clear what feature or fix is released to which environment • One-click deploy to all of your environments on- demand • Schedule deployments • Automatically deploy when code changes • Roll back to previous version easily • Control who can release to each environment • Track the releases across environments
  • 6. Release Definitions Specifications of • What to deploy? Artefacts • Where to deploy? Environments • How to deploy? Tasks
  • 7. What to Deploy? • Build server outputs: • Team Services (VSTS) • Team Foundation Server (TFS) • Jenkins • TeamCity • Version control sources: • TFVC, Git and GitHub • Other sources: • NuGet • PowerShell • Cmd and Shell
  • 8. Where to Deploy? • Environments • Environment Templates • Approvals and approvers • Environment Variables • Deployment Triggers • Queueing Policies
  • 9. How to Deploy? https://www.visualstudio.com/en-us/docs/build/define/build Custom build tasks/extensions https://www.visualstudio.com/en- us/docs/integrate/extensions/devel op/add-build-task http://blog.devmatter.com/custom- build-tasks-in-vso
  • 10. DEMO
  • 11. Office 365 Dev Patterns & Practices (PnP) https://github.com/OfficeDev/PnP-Sites-Core https://github.com/OfficeDev/PnP-PowerShell https://github.com/OfficeDev?query=office-ui-fabric (http://dev.office.com/fabric)
  • 12. Office 365 Developer PnP Core Component https://github.com/OfficeDev/PnP-Sites-Core • .NET library aimed to ease working with CSOM/REST api • If you prefer Configuration as Code (using C#) • Available as NuGet package
  • 14. Office 365 Developer PnP PowerShell Component https://github.com/OfficeDev/PnP-PowerShell • PowerShell commands for working with SharePoint Online and On-Premises • If you prefer Configuration by Declaration (using XML/JSON) • Available from the PowerShell gallery using the PowerShellGet module
  • 16. Build and Release using Office Dev PnP 1. Code in VSTS Git, continuous build/deploy, hosted agent, PnP-Sites-Core 2. Code in GitHub, no build, scheduled deploy, hosted agent, PnP-PowerShell 3. Code in BitBucket, nightly build/deploy, agent in Azure, PnP-PowerShell
  • 17. DEMO Scenario 1 • Code in https://pettersh.visualstudio.com/espc16 • Continuous builds (on commit) • Continuous deploy (on successful build) • Cloud hosted VSTS agent • Provisioning using PnP-Sites-Core
  • 18. DEMO Scenario 2 • Code in https://github.com/pskodvin/espc16-github • No builds (no triggers defined) • Scheduled deploy • Cloud hosted VSTS agent • Provisioning using PnP-PowerShell
  • 19. DEMO Scenario 3 • Code in https://bitbucket.org/puzzlepart/hoegh-o365-intranet • Scheduled builds • Continuous deploy (on successful build) • Azure hosted VSTS agent • Provisioning using PnP-PowerShell
  • 20. Relevant Topics Some related thoughts and ideas worth considering • Automatically create labels, tags or branches • Automatically relase when a pull request is accepted and successfully built • Automatically provision or decommission virtual machines using ARM • Automatically create news, blog posts, SharePoint items, Yammer posts,… • Deploy to • SharePoint on-premises • Azure web jobs • Provider hosted apps • Microsoft graph
  • 21. Summary • Visual Studio Team Services • Build and Release Management • Office Development Patterns & Practices (PnP)
  • 23. Backup slides In case of connectivity issues (oh nooooo….)
  • 24. Scenario: Continuous Build and Deploy using PnP Core Code in VSTS Git, Hosted agent
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42. Scenario: No Build, Scheduled Deploy using PnP-PowerShell Code in GitHub, Hosted build agent
  • 43.
  • 44.
  • 45.
  • 46.
  • 47. Scenario: Scheduled Build and Deploy using PnP-PowerShell Code in BitBucket, Build agent in Azure VM
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61. PnP-PowerShell on a hosted build agent • Windows Server 2012 R2, 64-bit, with Windows PowerShell 4.0 • PnP-PowerShell is NOT installed! • How to install PnP-PowerShell? • Install-Module (requires PowerShell 5.0/5.1) • Installer MSI from https://github.com/OfficeDev/PnP-PowerShell/releases • Clone https://github.com/OfficeDev/PnP-PowerShell.git or download zip
  • 62. PnP-PowerShell on your own build agent Setup as a Virtual Machine in Azure • Windows Server 2012 R2, 64-bit, with Windows PowerShell 4.0 • Install PnP-PowerShell from PowerShell Gallery or using MSI from GitHub https://github.com/OfficeDev/PnP-PowerShell/releases • Install other requirements like Node.js, NPM, Typings, Gulp, etc…. • Install https://github.com/Microsoft/vsts-agent/releases/download/v2.108.0/vsts-agent-win7-x64-2.108.0.zip

Editor's Notes

  1. Demo Preparations: VSCode: C:\dev-git\espc16 C:\dev-git\espc16-github C:\dev-git\hoegh-o365-intranet Chrome: https://pettersh.visualstudio.com/espc16 (build+release+release) https://hoeghlng.visualstudio.com/Intranet (build+release) https://github.com/pskodvin/espc16-github https://bitbucket.org/puzzlepart/hoegh-o365-intranet
  2. Who’s using release management today Who’s using TFS or team services? Who’s using Office Dev Patterns and Practices?
  3. Release documentation Deployment guides Packaging and distribution Logging into remote servers and opening command shells
  4. Predefined release definitions Custom release definitions
  5. Jenkins is an open source automation engine built on Java https://jenkins.io
  6. About visual studio team services
  7. Demo Preparations: VSCode: C:\dev-git\espc16 C:\dev-git\espc16-github C:\dev-git\hoegh-o365-intranet Chrome: https://pettersh.visualstudio.com/espc16 (build+release+release) https://hoeghlng.visualstudio.com/Intranet (build+release)
  8. Demo Preparations: VSCode: C:\dev-git\espc16 C:\dev-git\espc16-github C:\dev-git\hoegh-o365-intranet Chrome: https://pettersh.visualstudio.com/espc16 (build+release+release) https://hoeghlng.visualstudio.com/Intranet (build+release)
  9. Demo Preparations: VSCode: C:\dev-git\espc16 C:\dev-git\espc16-github C:\dev-git\hoegh-o365-intranet Chrome: https://pettersh.visualstudio.com/espc16 (build+release+release) https://hoeghlng.visualstudio.com/Intranet (build+release)