SlideShare a Scribd company logo
Visual Studio Release Management:
new Weltanschauung or natural evolution?
Giulio Vian
http://blog.casavian.eu/
giuliodev@gmail.com
@giulio_vian
http://www.getlatestversion.it/
Who am I?
• 25 years experience
• 14 years
• Currently
• Me? I’m just an OpsDev, you can tell it by the way I walk…
• Some works on GitHub
• TfsAggregator2
• TfsGitAdmin
• GitPushFilterPlugin
• since 2010
• If I do not speak English (or sounds weird to you) stop me
Will talk about?
• Visual Studio Release Management „vNext“
• Available on VSTS
• On premise with 2015 Update 2
• Questions to be answered
• What is?
• Costs
• Advantages
• Complexity
• Idiosyncrasies
Said undelicately, in the
cloud, we can release
features that aren't
finished yet.
Brian Harry
100/200-level session!
What is Visual Studio Release Management
“vNext”?
«DevOps solution for delivering your software
easily and more frequently»
An automation technology very similar to Build v.Next
designed to support deployment
New implementation WRT InRelease, 2013 o 2015
Tool to properly implement Continuous Delivery
What is Visual Studio Release Management
“vNext”?
«DevOps solution for delivering your software
easily and more frequently»
An automation technology very similar to Build v.Next
designed to support deployment
New implementation WRT InRelease, 2013 o 2015
Tool to properly implement Continuous Delivery
My own definition
• A tool to manage release of packages, built by internal or external
development teams, to QA and production environments, be they in
house or external, helping coordinate with teams responsible for
operation and monitoring QA and production environments
• Shortly, what happens after the build
Martin Fowler says…
• You’re doing continuous delivery when:
• Your software is deployable throughout its lifecycle
• Your team prioritizes keeping the software deployable over working on new
features
• Anybody can get fast, automated feedback on the production readiness of
their systems any time somebody makes a change to them
• You can perform push-button deployments of any version of the software to
any environment on demand
Source: http://martinfowler.com/bliki/ContinuousDelivery.html
Demo
Development using VSTS (cloud) and release on-premise
Availability and costs
• Currently VSTS-only, but Update 2 is just around the corner
• First hosted agent is ‘free’
• Hosted Agent (i.e. runs on an Azure VM)
• €33,73 / month
• £24.44 / month
• Private Agent (on premise)
• €12,65 / month
• £9.16 / month
Advantages
• Build ≠ Deploy
• Approval flow
• Say bye to XAML
Complexity
• Limited task library
• A good thing?
• Variables flow
• Manage server farm
• Global Objects
• Service Endpoints
Idiosyncrasies (PITA in en-US)
• Migrating from earlier versions
• http://blogs.msdn.com/b/visualstudioalmrangers/archive/2015/12/09/releas
e-management-workflow-migrator.aspx
• No inheritance or sharing
• Would be nice to share Credentials between Release Definitions
• Tasks are mostly designed for a single machine
• But using Azure…
• …or some Powershell trick…
• …or Azure Stack some day
Chicken or egg? (bootstrapping)
1. Install the agent
• Do not need being an admin
• Credentials specified in Release Definition
• TFS / VSTS on sight view (HTTP/S)
• Use a pre-canned VM image, DSC, Chef, … to install
2. Configure the machine
• Pre-requisites, e.g. IIS, WebDeploy
3. Install your Application
Caveats
• Approvers like cops
• Agent Pools to insulate environment (e.g. production from dev)
• An environment is not an environment
• Security
• Agent Pool Admin Account VSTS / TFS Instance
• Agent Queue Administrators / Users Collection
• Release Administrators Project
• Creating new Release is powerful
• Limit accesses
Update 2
• No more sequential Environment
• Skipping intermediate un-deployed Releases
• Set Release time schedule while approving
• Multiple approvers (and/or)
• Auto “Release notes”
• TFS on premise
• Source: http://blogs.msdn.com/b/visualstudioalm/archive/2016/01/08/vsts-release-
management-plan-for-2016-h1.aspx
New Weltanschauung o natural evolution?
To know more
• Official Documentation
• https://msdn.microsoft.com/en-
us/Library/vs/alm/Release/overview
• HOL at
• https://github.com/Microsoft/PartsUnlimited/blob/hands-on-
labs/docs/HOL_PartsUnlimited_WebSite_Continuous_Deployment
/HOL_Continuous_Deployment_Release_Management.md
• Continuous Delivery with Visual Studio ALM 2015 —
M.Olausson, J.Ehn (Apress)
• http://www.amazon.it/Continuous-Delivery-Visual-Studio-
2015/dp/1484212738/
Free Resources for DevOps Practices
• Optimize your DevOps practices and tools:
• Get started on your DevOps journey: aka.ms/devops
• Download the Forrester Infrastructure-as-Code whitepaper:
• Complexity kills. Automate with Infra as code: aka.ms/iac_tlp
• Technical resources for Practitioners:
• Get access to free online training: aka.ms/devopsmva
• DevOps Maturity Self-Assessment
• See where your organization is at across 7 areas:
http://devopsassessment.azurewebsites.net/
• Learn DevOps Practices hands-on with PartsUnlimited apps
• github.com/Microsoft/PartsUnlimited and
github.com/Microsoft/PartsUnlimitedMRP
Accelerate your application delivery lifecycle
Call to action

More Related Content

PPTX
Automated Build using teamcity
PDF
Jenkins
PDF
Chicago alm user group tfs version control poster - tfvc and git
PPTX
Introduction to jenkins
PDF
Team City
PPTX
BizTalk ALM (Toon Vanhoutte @ Integration Monday)
ODP
Version Controlling
PDF
Continuous delivery with open source tools
Automated Build using teamcity
Jenkins
Chicago alm user group tfs version control poster - tfvc and git
Introduction to jenkins
Team City
BizTalk ALM (Toon Vanhoutte @ Integration Monday)
Version Controlling
Continuous delivery with open source tools

What's hot (19)

PDF
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...
PPTX
Introduction to Containers & Diving a little deeper into the benefits of Con...
PDF
Bamboo Continuous Integration Server - Brief
ODP
An Introduction To Jenkins
PPT
ZENworks Application Virtualization
PDF
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
PPT
Continuous Integration
PDF
DevOps and Drupal
PPTX
Continuous Integration with Bamboo for Salesforce
PDF
Yale Jenkins Show and Tell
PPTX
Implementation of the Continuous Integration based on Atlassian Bamboo
PDF
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
PPTX
CI/CD at bol.com
PPTX
Easy Cross-Platform PowerShell Automation with Puppet Bolt
PPT
CI and CD with Jenkins
PPTX
Dockerizing your java development environment
PPT
Packing It In: Images, Containers and Config Management
PPTX
Jenkins Introduction
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...
Introduction to Containers & Diving a little deeper into the benefits of Con...
Bamboo Continuous Integration Server - Brief
An Introduction To Jenkins
ZENworks Application Virtualization
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
Continuous Integration
DevOps and Drupal
Continuous Integration with Bamboo for Salesforce
Yale Jenkins Show and Tell
Implementation of the Continuous Integration based on Atlassian Bamboo
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
CI/CD at bol.com
Easy Cross-Platform PowerShell Automation with Puppet Bolt
CI and CD with Jenkins
Dockerizing your java development environment
Packing It In: Images, Containers and Config Management
Jenkins Introduction
Ad

Viewers also liked (9)

PPT
Caso Nike. Daridia Gomez
ODP
Trabalho de tic (Nike)
PPT
Planejamento Estratégico - Nike
PPTX
Caso-NIKE
PPTX
Nike
PDF
Estudo de caso - Marca - Nike
DOCX
Caso Nike. Daridia Gomez
Trabalho de tic (Nike)
Planejamento Estratégico - Nike
Caso-NIKE
Nike
Estudo de caso - Marca - Nike
Ad

Similar to Visual Studio Release Management - New weltanschauung or natural evolution? @ Swansea SDC (20)

PDF
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
PPTX
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
PPTX
Release Management with Visual Studio Team Services and Office Dev PnP
PPTX
Continuous Integration
PPTX
Taking your version control to a next level with TFS and Git
PPTX
TUTTO SU VISUAL STUDIO ALM 2015
PPTX
Staying connected: An Overview of Announcements from Microsoft’s Connect();
PPTX
Source control - what you need to know
PPTX
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
PPTX
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
PDF
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
PPTX
Office Add-ins community call-March 2019
PDF
Continuous delivery @wcap 5-09-2013
PPTX
Making software development processes to work for you
PPTX
Sps toronto introduction to azure functions microsoft flow
PPTX
PHP Unconference Continuous Integration
PPTX
Windows 2012 R2 Multi Server Management
PPTX
#SPFestDc dev302 Is it possible to do #DevOps with the SharePoint Framework?
PPTX
Adrian marinica continuous integration in the visual studio world
PPTX
Developing NuGet
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Release Management with Visual Studio Team Services and Office Dev PnP
Continuous Integration
Taking your version control to a next level with TFS and Git
TUTTO SU VISUAL STUDIO ALM 2015
Staying connected: An Overview of Announcements from Microsoft’s Connect();
Source control - what you need to know
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
Office Add-ins community call-March 2019
Continuous delivery @wcap 5-09-2013
Making software development processes to work for you
Sps toronto introduction to azure functions microsoft flow
PHP Unconference Continuous Integration
Windows 2012 R2 Multi Server Management
#SPFestDc dev302 Is it possible to do #DevOps with the SharePoint Framework?
Adrian marinica continuous integration in the visual studio world
Developing NuGet

More from Giulio Vian (20)

PPTX
Come implementare la governance nella vostra piattaforma e lavorare felici se...
PDF
Is Technical Debt the right metaphor for Continuous Update?
PPTX
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
PPTX
Software rotting - DevOpsCon Berlin
PPTX
Software rotting
PPTX
Software rotting - 28 Apr - DeveloperWeek Europe 2022
PPTX
L'impatto della sicurezza su DevOps
PPTX
L'impatto della sicurezza su DevOps
PPTX
A map for DevOps on Microsoft Stack - MS DevSummit
PPTX
Perché è così difficile il deploy dei database - DevCast DevOps Serie
PPTX
Database deployments - dotnetsheff
PPTX
Database deployment: still hard after all these years - Data Saturday #1
PPTX
Pipeline your Pipelines - 2020 All Day DevOps
PPTX
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
PPTX
Top 10 pipeline mistakes - dotnetsheff
PPTX
Introduction to Terraform with Azure flavor
PPTX
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
PPTX
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
PPTX
Pipeline your pipelines!
PPTX
Why is DevOps vital for my company’s business
Come implementare la governance nella vostra piattaforma e lavorare felici se...
Is Technical Debt the right metaphor for Continuous Update?
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
Software rotting - DevOpsCon Berlin
Software rotting
Software rotting - 28 Apr - DeveloperWeek Europe 2022
L'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOps
A map for DevOps on Microsoft Stack - MS DevSummit
Perché è così difficile il deploy dei database - DevCast DevOps Serie
Database deployments - dotnetsheff
Database deployment: still hard after all these years - Data Saturday #1
Pipeline your Pipelines - 2020 All Day DevOps
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
Top 10 pipeline mistakes - dotnetsheff
Introduction to Terraform with Azure flavor
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Pipeline your pipelines!
Why is DevOps vital for my company’s business

Recently uploaded (20)

PDF
Multi-factor Authentication (MFA) requirement for Microsoft 365 Admin Center_...
PDF
Build Multi-agent using Agent Development Kit
PPTX
Materi-Enum-and-Record-Data-Type (1).pptx
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
AIRLINE PRICE API | FLIGHT API COST |
PDF
The Role of Automation and AI in EHS Management for Data Centers.pdf
PDF
System and Network Administration Chapter 2
PDF
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
PPTX
Introduction to Artificial Intelligence
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Digital Strategies for Manufacturing Companies
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Online Work Permit System for Fast Permit Processing
PPT
Introduction Database Management System for Course Database
PDF
Softaken Excel to vCard Converter Software.pdf
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PPTX
FLIGHT TICKET RESERVATION SYSTEM | FLIGHT BOOKING ENGINE API
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Multi-factor Authentication (MFA) requirement for Microsoft 365 Admin Center_...
Build Multi-agent using Agent Development Kit
Materi-Enum-and-Record-Data-Type (1).pptx
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
AIRLINE PRICE API | FLIGHT API COST |
The Role of Automation and AI in EHS Management for Data Centers.pdf
System and Network Administration Chapter 2
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
Introduction to Artificial Intelligence
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Digital Strategies for Manufacturing Companies
Understanding Forklifts - TECH EHS Solution
Online Work Permit System for Fast Permit Processing
Introduction Database Management System for Course Database
Softaken Excel to vCard Converter Software.pdf
ManageIQ - Sprint 268 Review - Slide Deck
FLIGHT TICKET RESERVATION SYSTEM | FLIGHT BOOKING ENGINE API
PTS Company Brochure 2025 (1).pdf.......
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool

Visual Studio Release Management - New weltanschauung or natural evolution? @ Swansea SDC

  • 1. Visual Studio Release Management: new Weltanschauung or natural evolution? Giulio Vian http://blog.casavian.eu/ [email protected] @giulio_vian http://www.getlatestversion.it/
  • 2. Who am I? • 25 years experience • 14 years • Currently • Me? I’m just an OpsDev, you can tell it by the way I walk… • Some works on GitHub • TfsAggregator2 • TfsGitAdmin • GitPushFilterPlugin • since 2010 • If I do not speak English (or sounds weird to you) stop me
  • 3. Will talk about? • Visual Studio Release Management „vNext“ • Available on VSTS • On premise with 2015 Update 2 • Questions to be answered • What is? • Costs • Advantages • Complexity • Idiosyncrasies Said undelicately, in the cloud, we can release features that aren't finished yet. Brian Harry 100/200-level session!
  • 4. What is Visual Studio Release Management “vNext”? «DevOps solution for delivering your software easily and more frequently» An automation technology very similar to Build v.Next designed to support deployment New implementation WRT InRelease, 2013 o 2015 Tool to properly implement Continuous Delivery
  • 5. What is Visual Studio Release Management “vNext”? «DevOps solution for delivering your software easily and more frequently» An automation technology very similar to Build v.Next designed to support deployment New implementation WRT InRelease, 2013 o 2015 Tool to properly implement Continuous Delivery
  • 6. My own definition • A tool to manage release of packages, built by internal or external development teams, to QA and production environments, be they in house or external, helping coordinate with teams responsible for operation and monitoring QA and production environments • Shortly, what happens after the build
  • 7. Martin Fowler says… • You’re doing continuous delivery when: • Your software is deployable throughout its lifecycle • Your team prioritizes keeping the software deployable over working on new features • Anybody can get fast, automated feedback on the production readiness of their systems any time somebody makes a change to them • You can perform push-button deployments of any version of the software to any environment on demand Source: http://martinfowler.com/bliki/ContinuousDelivery.html
  • 8. Demo Development using VSTS (cloud) and release on-premise
  • 9. Availability and costs • Currently VSTS-only, but Update 2 is just around the corner • First hosted agent is ‘free’ • Hosted Agent (i.e. runs on an Azure VM) • €33,73 / month • £24.44 / month • Private Agent (on premise) • €12,65 / month • £9.16 / month
  • 10. Advantages • Build ≠ Deploy • Approval flow • Say bye to XAML
  • 11. Complexity • Limited task library • A good thing? • Variables flow • Manage server farm • Global Objects • Service Endpoints
  • 12. Idiosyncrasies (PITA in en-US) • Migrating from earlier versions • http://blogs.msdn.com/b/visualstudioalmrangers/archive/2015/12/09/releas e-management-workflow-migrator.aspx • No inheritance or sharing • Would be nice to share Credentials between Release Definitions • Tasks are mostly designed for a single machine • But using Azure… • …or some Powershell trick… • …or Azure Stack some day
  • 13. Chicken or egg? (bootstrapping) 1. Install the agent • Do not need being an admin • Credentials specified in Release Definition • TFS / VSTS on sight view (HTTP/S) • Use a pre-canned VM image, DSC, Chef, … to install 2. Configure the machine • Pre-requisites, e.g. IIS, WebDeploy 3. Install your Application
  • 14. Caveats • Approvers like cops • Agent Pools to insulate environment (e.g. production from dev) • An environment is not an environment • Security • Agent Pool Admin Account VSTS / TFS Instance • Agent Queue Administrators / Users Collection • Release Administrators Project • Creating new Release is powerful • Limit accesses
  • 15. Update 2 • No more sequential Environment • Skipping intermediate un-deployed Releases • Set Release time schedule while approving • Multiple approvers (and/or) • Auto “Release notes” • TFS on premise • Source: http://blogs.msdn.com/b/visualstudioalm/archive/2016/01/08/vsts-release- management-plan-for-2016-h1.aspx
  • 16. New Weltanschauung o natural evolution?
  • 17. To know more • Official Documentation • https://msdn.microsoft.com/en- us/Library/vs/alm/Release/overview • HOL at • https://github.com/Microsoft/PartsUnlimited/blob/hands-on- labs/docs/HOL_PartsUnlimited_WebSite_Continuous_Deployment /HOL_Continuous_Deployment_Release_Management.md • Continuous Delivery with Visual Studio ALM 2015 — M.Olausson, J.Ehn (Apress) • http://www.amazon.it/Continuous-Delivery-Visual-Studio- 2015/dp/1484212738/
  • 18. Free Resources for DevOps Practices • Optimize your DevOps practices and tools: • Get started on your DevOps journey: aka.ms/devops • Download the Forrester Infrastructure-as-Code whitepaper: • Complexity kills. Automate with Infra as code: aka.ms/iac_tlp • Technical resources for Practitioners: • Get access to free online training: aka.ms/devopsmva • DevOps Maturity Self-Assessment • See where your organization is at across 7 areas: http://devopsassessment.azurewebsites.net/ • Learn DevOps Practices hands-on with PartsUnlimited apps • github.com/Microsoft/PartsUnlimited and github.com/Microsoft/PartsUnlimitedMRP Accelerate your application delivery lifecycle

Editor's Notes

  • #3: https://github.com/giuliov/TfsGitAdmin https://github.com/giuliov/GitPushFilterPlugin https://github.com/tfsaggregator/tfsaggregator http://www.radiotfs.com/Show/105/TFSAggregator2withJesseHouwing
  • #9: N.B. using VSTS, cloud ≠ public! https://giuliovdev.visualstudio.com/DefaultCollection/_git/RMDemo2016H1
  • #10: bagigi
  • #12: Service Endpoints are defined at Collection level
  • #17: It is both: a totally new implementation BUT based on InRelease data model and Build.vNext While there are many things that should be refined, I see solid ground Hope to see some process-oriented tasks, e.g. gradual roll-out on a farm
  • #20: Not covered today: Non-Windows agents and platforms Deploy on Azure Deploy on other cloud environment, e.g. AWS