SlideShare a Scribd company logo
1 of 23
getlatestversion
Visual Studio Release Management: una nuova
Weltanschauung o un’evoluzione naturale?
Giulio Vian
blog.casavian.eu
giuliodev@gmail.com
@giulio_vian
25 anni disonorata professione
14 anni di
Ora in
Me? I’m just an OpsDev, you can tell it by the way I walk…
Alcune cosine su GitHub
TfsGitAdmin GitPushFilterPlugin TfsAggregator2
dal 2010 suppergiù
Se parlo in glese, fermatemi
Ma chi è?
Visual Studio Release Management „vNext“
Da novembre in anteprima su VSTS (preview)
Domande cui vogliamo rispondere
Cos’è e in quale contesto
Disponibilità e costi
Vantaggi
Complessità
Idiosincrasìe
Di che si parla?
Said undelicately, in
the cloud, we can
release features that
aren't finished yet.
Brian Harry
Sessione livello 200 più per progettisti che per smanettoni.
Cos’è Visual Studio Release Management „vNext“
«Soluzione DevOps per la distribuzione semplice
e più frequente del software»
Automazione simile alla build specifica per il deploy
Nuova tecnologia rispetto InRelease, 2013 o 2015
Strumento implementazione Continuous Delivery
Cos’è Visual Studio Release Management „vNext“
«Soluzione DevOps per la distribuzione semplice
e più frequente del software»
Automazione simile alla build specifica per il deploy
Nuova tecnologia rispetto InRelease, 2013 o 2015
Strumento implementazione Continuous Delivery
Strumento per gestire il rilascio di pacchetti prodotti da team di
sviluppo, interni od esterni, agli ambienti di test e produzione,
siano essi in casa o esterni, facilitando il coordinamento con i
team di gestione e monitoraggio degli ambienti stessi
Ossia quel che avviene dopo la build
Mia definizione
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
Martin Fowler dice che…
Source: http://martinfowler.com/bliki/ContinuousDelivery.html
• Si può rilasciare sempre, dal primo all’ultimo giorno
• Se si rompe si fissa subito anche se Babbo Natale vuol
cambiare il colore dei bottoni
• Chiunque può conoscere lo stato dei rilasci sui diversi
ambienti
• I rilasci sono automatizzati alla pressione di un bottone per
qualsiasi ambiente e versione
...che tradotto vuol dire
Source:
http://continuous
delivery.com/2014
/02/visualizations-
of-continuous-
delivery/
Demo
Sviluppo nel cloud e rilascio in casa
Al momento solo da VSTS
Il primo è gratis (nei limiti)
Hosted Agent (cioè in Azure)
€33,73 al mese l‘uno
Private Agent (ovvero in casa)
€12,65 al mese l‘uno
Disponibilità e costi
Build ≠ Deploy
Flusso di approvazione
Addio XAML
Vantaggi
Libreria di task limitata
Un bene?
Flusso delle variabili
Ragionare per gruppi di macchine
Livelli degli oggetti
Service Endpoints
Complessità
Migrazione dalle versioni precedenti
http://blogs.msdn.com/b/visualstudioalmrangers/archive/2015/12/09/release-
management-workflow-migrator.aspx
Non c’è ereditarietà
Ad es. Credenziali legate alla release
I task sono spesso orientati alla singola macchina
Anche se verso Azure…
…o con le magie di Powershell…
…e Azure Stack potrebbe annullare le differenze
Idiosincrasìe
Agente installato
Non richiede essere amministratore (credenziali nella Release)
TFS / VSTS in vista (HTTP/S)
Immagine VM, DSC, Chef, …
Configurazione macchina
Es. Configurazione IIS, installazione WebDeploy
Installazione Applicazione
L’uovo o la gallina? (bootstrapping)
approver come i carabinieri
Agent Pools per isolare gli ambienti (produzione dal resto)
Un environment non è un ambiente
Sicurezza
Agent Pool Admin AccountVSTS / IstanzaTFS
Agent Queue Administrators / Users Collection
Release Administrators Project
Creare release è molto potente
Avvertenze per l’uso
Sguardo al futuro (Update 2)
Vincolo sequenza lineare di ambienti
Possibilita` di saltare rilasci intermedi
Finestra temporale di rilascio definita in fase di approvazione
Piu` approver (and/or)
“Release notes” calcolate in automatico
TFS Update 2 on-prem
Source: http://blogs.msdn.com/b/visualstudioalm/archive/2016/01/08/vsts-
release-management-plan-for-2016-h1.aspx
Nuova Weltanschauung o evoluzione naturale?
Documentazione
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/
Materiale di approfondimento
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
Grazie agli sponsor
http://bit.ly/DOAW16FEED1
Dedicateci 2 minuti del vostro tempo,
e ci aiuterete a crescere e migliorare!
Track Intro
http://bit.ly/DOAW16FEED2
Track Avanzata

More Related Content

Viewers also liked

IME-USP - Panorama de Carreiras Técnicas 2016
IME-USP - Panorama de Carreiras Técnicas 2016IME-USP - Panorama de Carreiras Técnicas 2016
IME-USP - Panorama de Carreiras Técnicas 2016Contratado.me
 
Defrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ TamccannDefrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ TamccannT. A. McCann
 
Catalogue xe toyota camry tại dailytoyotahadong.com.v
Catalogue xe toyota camry tại dailytoyotahadong.com.vCatalogue xe toyota camry tại dailytoyotahadong.com.v
Catalogue xe toyota camry tại dailytoyotahadong.com.vvagues bui
 
Projeto Desenvolvimento das Startups do Território de Teresina
Projeto Desenvolvimento das Startups do Território de TeresinaProjeto Desenvolvimento das Startups do Território de Teresina
Projeto Desenvolvimento das Startups do Território de TeresinaSamuel Moraes
 
Top Issues Faced by Field Service Businesses & The Solution
Top Issues Faced by Field Service Businesses & The SolutionTop Issues Faced by Field Service Businesses & The Solution
Top Issues Faced by Field Service Businesses & The SolutionFingent Corporation
 
Многомировая теория истинности
Многомировая теория истинностиМногомировая теория истинности
Многомировая теория истинностиAlexander Boldachev
 
Beberapa rahasia dalam al qur'an. indonesian. bahasa indonesia
Beberapa rahasia dalam al qur'an. indonesian. bahasa indonesiaBeberapa rahasia dalam al qur'an. indonesian. bahasa indonesia
Beberapa rahasia dalam al qur'an. indonesian. bahasa indonesiaHarunyahyaBahasaIndonesia
 
Понятийные системы в цифровом мире: что может знать компьютер?
Понятийные системы в цифровом мире: что может знать компьютер?Понятийные системы в цифровом мире: что может знать компьютер?
Понятийные системы в цифровом мире: что может знать компьютер?Dmitry Kudryavtsev
 
뉴스룸의 변화와 전망 - hackable newsroom
뉴스룸의 변화와 전망 - hackable newsroom뉴스룸의 변화와 전망 - hackable newsroom
뉴스룸의 변화와 전망 - hackable newsroomSungkyu Lee
 
GWT: Our Experiences
GWT: Our ExperiencesGWT: Our Experiences
GWT: Our ExperiencesYenwen Feng
 
افضل 5 كتب عن كيفية تحقيق الثراءpdf
افضل 5 كتب عن كيفية تحقيق الثراءpdfافضل 5 كتب عن كيفية تحقيق الثراءpdf
افضل 5 كتب عن كيفية تحقيق الثراءpdfosmanabdelrhman
 
Идеята за социална онтология и принципът на релевантността
Идеята за социална онтология и принципът на релевантносттаИдеята за социална онтология и принципът на релевантността
Идеята за социална онтология и принципът на релевантносттаNick Nickoloff
 

Viewers also liked (20)

Thoi rh-2016
Thoi rh-2016Thoi rh-2016
Thoi rh-2016
 
IME-USP - Panorama de Carreiras Técnicas 2016
IME-USP - Panorama de Carreiras Técnicas 2016IME-USP - Panorama de Carreiras Técnicas 2016
IME-USP - Panorama de Carreiras Técnicas 2016
 
Ecuaciones
EcuacionesEcuaciones
Ecuaciones
 
Memory
MemoryMemory
Memory
 
TypeScript
TypeScriptTypeScript
TypeScript
 
Defrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ TamccannDefrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ Tamccann
 
Catalogue xe toyota camry tại dailytoyotahadong.com.v
Catalogue xe toyota camry tại dailytoyotahadong.com.vCatalogue xe toyota camry tại dailytoyotahadong.com.v
Catalogue xe toyota camry tại dailytoyotahadong.com.v
 
Projeto Desenvolvimento das Startups do Território de Teresina
Projeto Desenvolvimento das Startups do Território de TeresinaProjeto Desenvolvimento das Startups do Território de Teresina
Projeto Desenvolvimento das Startups do Território de Teresina
 
Top Issues Faced by Field Service Businesses & The Solution
Top Issues Faced by Field Service Businesses & The SolutionTop Issues Faced by Field Service Businesses & The Solution
Top Issues Faced by Field Service Businesses & The Solution
 
S65 lecture 2
S65 lecture 2S65 lecture 2
S65 lecture 2
 
Многомировая теория истинности
Многомировая теория истинностиМногомировая теория истинности
Многомировая теория истинности
 
Online ideation
Online ideationOnline ideation
Online ideation
 
Beberapa rahasia dalam al qur'an. indonesian. bahasa indonesia
Beberapa rahasia dalam al qur'an. indonesian. bahasa indonesiaBeberapa rahasia dalam al qur'an. indonesian. bahasa indonesia
Beberapa rahasia dalam al qur'an. indonesian. bahasa indonesia
 
Понятийные системы в цифровом мире: что может знать компьютер?
Понятийные системы в цифровом мире: что может знать компьютер?Понятийные системы в цифровом мире: что может знать компьютер?
Понятийные системы в цифровом мире: что может знать компьютер?
 
Technical excellence
Technical excellenceTechnical excellence
Technical excellence
 
뉴스룸의 변화와 전망 - hackable newsroom
뉴스룸의 변화와 전망 - hackable newsroom뉴스룸의 변화와 전망 - hackable newsroom
뉴스룸의 변화와 전망 - hackable newsroom
 
GWT: Our Experiences
GWT: Our ExperiencesGWT: Our Experiences
GWT: Our Experiences
 
افضل 5 كتب عن كيفية تحقيق الثراءpdf
افضل 5 كتب عن كيفية تحقيق الثراءpdfافضل 5 كتب عن كيفية تحقيق الثراءpdf
افضل 5 كتب عن كيفية تحقيق الثراءpdf
 
Идеята за социална онтология и принципът на релевантността
Идеята за социална онтология и принципът на релевантносттаИдеята за социална онтология и принципът на релевантността
Идеята за социална онтология и принципът на релевантността
 
ZDG_magazine_totaal_spread
ZDG_magazine_totaal_spreadZDG_magazine_totaal_spread
ZDG_magazine_totaal_spread
 

Similar to Visual Studio Release Management - una nuova Weltanschauung o un'evoluzione naturale

Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineDavide Benvegnù
 
Integrazione continua con TFS Build
Integrazione continua con TFS BuildIntegrazione continua con TFS Build
Integrazione continua con TFS BuildGian Maria Ricci
 
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...Andrea Cirioni
 
Utilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software DeveloperUtilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software DeveloperStefano Ottaviani
 
Rich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.jsRich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.jsGiorgio Di Nardo
 
Introduzione alla programmazione Java
Introduzione alla programmazione JavaIntroduzione alla programmazione Java
Introduzione alla programmazione JavaMassimiliano Brolli
 
Keep calm and deploy
Keep calm and deployKeep calm and deploy
Keep calm and deployKlab
 
Continuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineContinuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineDavide Benvegnù
 
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...Alessandro Alpi
 
Lavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.comLavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.comSimone Chiaretta
 
Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...
Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...
Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...Marco Amendola
 
DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017Giulio Vian
 
SugarCRM Enterprise Development Virtual Appliance
SugarCRM Enterprise Development Virtual ApplianceSugarCRM Enterprise Development Virtual Appliance
SugarCRM Enterprise Development Virtual ApplianceAntonio Musarra
 
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...Marco Parenzan
 
Wpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero teamWpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero teamAlessandro Alpi
 
Windows Workflow Foundation 4
Windows Workflow Foundation 4Windows Workflow Foundation 4
Windows Workflow Foundation 4Felice Pescatore
 
Il buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita feliceIl buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita feliceAndrea Dottor
 

Similar to Visual Studio Release Management - una nuova Weltanschauung o un'evoluzione naturale (20)

Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
 
Integrazione continua con TFS Build
Integrazione continua con TFS BuildIntegrazione continua con TFS Build
Integrazione continua con TFS Build
 
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
 
Utilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software DeveloperUtilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software Developer
 
Rich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.jsRich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.js
 
Introduzione alla programmazione Java
Introduzione alla programmazione JavaIntroduzione alla programmazione Java
Introduzione alla programmazione Java
 
Keep calm and deploy
Keep calm and deployKeep calm and deploy
Keep calm and deploy
 
Continuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineContinuous Integration con Visual Studio Online
Continuous Integration con Visual Studio Online
 
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
 
Lavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.comLavorare con applicazioni Brownfield: il caso di 39x27.com
Lavorare con applicazioni Brownfield: il caso di 39x27.com
 
Microsoft Fast - Overview
Microsoft Fast - OverviewMicrosoft Fast - Overview
Microsoft Fast - Overview
 
Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...
Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...
Guarda, senza mani! Automatizzare build e rilasci con Powershell senza farsi ...
 
DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017
 
SugarCRM Enterprise Development Virtual Appliance
SugarCRM Enterprise Development Virtual ApplianceSugarCRM Enterprise Development Virtual Appliance
SugarCRM Enterprise Development Virtual Appliance
 
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
 
Vagrant from zero to VM
Vagrant from zero to VMVagrant from zero to VM
Vagrant from zero to VM
 
Wpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero teamWpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero team
 
Windows Workflow Foundation 4
Windows Workflow Foundation 4Windows Workflow Foundation 4
Windows Workflow Foundation 4
 
Il buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita feliceIl buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita felice
 
3DD 1e Reconfig
3DD 1e Reconfig3DD 1e Reconfig
3DD 1e Reconfig
 

More from Giulio Vian

Is Technical Debt the right metaphor for Continuous Update?
Is Technical Debt the right metaphor for Continuous Update?Is Technical Debt the right metaphor for Continuous Update?
Is Technical Debt the right metaphor for Continuous Update?Giulio Vian
 
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022Giulio Vian
 
Software rotting - DevOpsCon Berlin
Software rotting - DevOpsCon BerlinSoftware rotting - DevOpsCon Berlin
Software rotting - DevOpsCon BerlinGiulio Vian
 
Software rotting
Software rottingSoftware rotting
Software rottingGiulio Vian
 
Software rotting - 28 Apr - DeveloperWeek Europe 2022
Software rotting - 28 Apr - DeveloperWeek Europe 2022Software rotting - 28 Apr - DeveloperWeek Europe 2022
Software rotting - 28 Apr - DeveloperWeek Europe 2022Giulio Vian
 
L'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOpsL'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOpsGiulio Vian
 
L'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOpsL'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOpsGiulio Vian
 
A map for DevOps on Microsoft Stack - MS DevSummit
A map for DevOps on Microsoft Stack - MS DevSummitA map for DevOps on Microsoft Stack - MS DevSummit
A map for DevOps on Microsoft Stack - MS DevSummitGiulio Vian
 
Perché è così difficile il deploy dei database - DevCast DevOps Serie
Perché è così difficile il deploy dei database  - DevCast DevOps SeriePerché è così difficile il deploy dei database  - DevCast DevOps Serie
Perché è così difficile il deploy dei database - DevCast DevOps SerieGiulio Vian
 
Database deployments - dotnetsheff
Database deployments - dotnetsheffDatabase deployments - dotnetsheff
Database deployments - dotnetsheffGiulio Vian
 
Database deployment: still hard after all these years - Data Saturday #1
Database deployment: still hard after all these years - Data Saturday #1Database deployment: still hard after all these years - Data Saturday #1
Database deployment: still hard after all these years - Data Saturday #1Giulio Vian
 
Pipeline your Pipelines - 2020 All Day DevOps
Pipeline your Pipelines - 2020 All Day DevOpsPipeline your Pipelines - 2020 All Day DevOps
Pipeline your Pipelines - 2020 All Day DevOpsGiulio Vian
 
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020Giulio Vian
 
Top 10 pipeline mistakes - dotnetsheff
Top 10 pipeline mistakes - dotnetsheffTop 10 pipeline mistakes - dotnetsheff
Top 10 pipeline mistakes - dotnetsheffGiulio Vian
 
Introduction to Terraform with Azure flavor
Introduction to Terraform with Azure flavorIntroduction to Terraform with Azure flavor
Introduction to Terraform with Azure flavorGiulio Vian
 
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...Giulio Vian
 
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...Giulio Vian
 
Pipeline your pipelines!
Pipeline your pipelines!Pipeline your pipelines!
Pipeline your pipelines!Giulio Vian
 
Why is DevOps vital for my company’s business
Why is DevOps vital for my company’s businessWhy is DevOps vital for my company’s business
Why is DevOps vital for my company’s businessGiulio Vian
 
Introduzione a GitHub Actions (beta)
Introduzione a GitHub Actions (beta)Introduzione a GitHub Actions (beta)
Introduzione a GitHub Actions (beta)Giulio Vian
 

More from Giulio Vian (20)

Is Technical Debt the right metaphor for Continuous Update?
Is Technical Debt the right metaphor for Continuous Update?Is Technical Debt the right metaphor for Continuous Update?
Is Technical Debt the right metaphor for Continuous Update?
 
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
 
Software rotting - DevOpsCon Berlin
Software rotting - DevOpsCon BerlinSoftware rotting - DevOpsCon Berlin
Software rotting - DevOpsCon Berlin
 
Software rotting
Software rottingSoftware rotting
Software rotting
 
Software rotting - 28 Apr - DeveloperWeek Europe 2022
Software rotting - 28 Apr - DeveloperWeek Europe 2022Software rotting - 28 Apr - DeveloperWeek Europe 2022
Software rotting - 28 Apr - DeveloperWeek Europe 2022
 
L'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOpsL'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOps
 
L'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOpsL'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOps
 
A map for DevOps on Microsoft Stack - MS DevSummit
A map for DevOps on Microsoft Stack - MS DevSummitA map for DevOps on Microsoft Stack - MS DevSummit
A map for DevOps on Microsoft Stack - MS DevSummit
 
Perché è così difficile il deploy dei database - DevCast DevOps Serie
Perché è così difficile il deploy dei database  - DevCast DevOps SeriePerché è così difficile il deploy dei database  - DevCast DevOps Serie
Perché è così difficile il deploy dei database - DevCast DevOps Serie
 
Database deployments - dotnetsheff
Database deployments - dotnetsheffDatabase deployments - dotnetsheff
Database deployments - dotnetsheff
 
Database deployment: still hard after all these years - Data Saturday #1
Database deployment: still hard after all these years - Data Saturday #1Database deployment: still hard after all these years - Data Saturday #1
Database deployment: still hard after all these years - Data Saturday #1
 
Pipeline your Pipelines - 2020 All Day DevOps
Pipeline your Pipelines - 2020 All Day DevOpsPipeline your Pipelines - 2020 All Day DevOps
Pipeline your Pipelines - 2020 All Day DevOps
 
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
 
Top 10 pipeline mistakes - dotnetsheff
Top 10 pipeline mistakes - dotnetsheffTop 10 pipeline mistakes - dotnetsheff
Top 10 pipeline mistakes - dotnetsheff
 
Introduction to Terraform with Azure flavor
Introduction to Terraform with Azure flavorIntroduction to Terraform with Azure flavor
Introduction to Terraform with Azure flavor
 
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
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 - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
 
Pipeline your pipelines!
Pipeline your pipelines!Pipeline your pipelines!
Pipeline your pipelines!
 
Why is DevOps vital for my company’s business
Why is DevOps vital for my company’s businessWhy is DevOps vital for my company’s business
Why is DevOps vital for my company’s business
 
Introduzione a GitHub Actions (beta)
Introduzione a GitHub Actions (beta)Introduzione a GitHub Actions (beta)
Introduzione a GitHub Actions (beta)
 

Visual Studio Release Management - una nuova Weltanschauung o un'evoluzione naturale

  • 1. getlatestversion Visual Studio Release Management: una nuova Weltanschauung o un’evoluzione naturale? Giulio Vian blog.casavian.eu giuliodev@gmail.com @giulio_vian
  • 2. 25 anni disonorata professione 14 anni di Ora in Me? I’m just an OpsDev, you can tell it by the way I walk… Alcune cosine su GitHub TfsGitAdmin GitPushFilterPlugin TfsAggregator2 dal 2010 suppergiù Se parlo in glese, fermatemi Ma chi è?
  • 3. Visual Studio Release Management „vNext“ Da novembre in anteprima su VSTS (preview) Domande cui vogliamo rispondere Cos’è e in quale contesto Disponibilità e costi Vantaggi Complessità Idiosincrasìe Di che si parla? Said undelicately, in the cloud, we can release features that aren't finished yet. Brian Harry Sessione livello 200 più per progettisti che per smanettoni.
  • 4. Cos’è Visual Studio Release Management „vNext“ «Soluzione DevOps per la distribuzione semplice e più frequente del software» Automazione simile alla build specifica per il deploy Nuova tecnologia rispetto InRelease, 2013 o 2015 Strumento implementazione Continuous Delivery
  • 5. Cos’è Visual Studio Release Management „vNext“ «Soluzione DevOps per la distribuzione semplice e più frequente del software» Automazione simile alla build specifica per il deploy Nuova tecnologia rispetto InRelease, 2013 o 2015 Strumento implementazione Continuous Delivery
  • 6. Strumento per gestire il rilascio di pacchetti prodotti da team di sviluppo, interni od esterni, agli ambienti di test e produzione, siano essi in casa o esterni, facilitando il coordinamento con i team di gestione e monitoraggio degli ambienti stessi Ossia quel che avviene dopo la build Mia definizione
  • 7. 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 Martin Fowler dice che… Source: http://martinfowler.com/bliki/ContinuousDelivery.html
  • 8. • Si può rilasciare sempre, dal primo all’ultimo giorno • Se si rompe si fissa subito anche se Babbo Natale vuol cambiare il colore dei bottoni • Chiunque può conoscere lo stato dei rilasci sui diversi ambienti • I rilasci sono automatizzati alla pressione di un bottone per qualsiasi ambiente e versione ...che tradotto vuol dire
  • 10. Demo Sviluppo nel cloud e rilascio in casa
  • 11. Al momento solo da VSTS Il primo è gratis (nei limiti) Hosted Agent (cioè in Azure) €33,73 al mese l‘uno Private Agent (ovvero in casa) €12,65 al mese l‘uno Disponibilità e costi
  • 12. Build ≠ Deploy Flusso di approvazione Addio XAML Vantaggi
  • 13. Libreria di task limitata Un bene? Flusso delle variabili Ragionare per gruppi di macchine Livelli degli oggetti Service Endpoints Complessità
  • 14. Migrazione dalle versioni precedenti http://blogs.msdn.com/b/visualstudioalmrangers/archive/2015/12/09/release- management-workflow-migrator.aspx Non c’è ereditarietà Ad es. Credenziali legate alla release I task sono spesso orientati alla singola macchina Anche se verso Azure… …o con le magie di Powershell… …e Azure Stack potrebbe annullare le differenze Idiosincrasìe
  • 15. Agente installato Non richiede essere amministratore (credenziali nella Release) TFS / VSTS in vista (HTTP/S) Immagine VM, DSC, Chef, … Configurazione macchina Es. Configurazione IIS, installazione WebDeploy Installazione Applicazione L’uovo o la gallina? (bootstrapping)
  • 16. approver come i carabinieri Agent Pools per isolare gli ambienti (produzione dal resto) Un environment non è un ambiente Sicurezza Agent Pool Admin AccountVSTS / IstanzaTFS Agent Queue Administrators / Users Collection Release Administrators Project Creare release è molto potente Avvertenze per l’uso
  • 17. Sguardo al futuro (Update 2) Vincolo sequenza lineare di ambienti Possibilita` di saltare rilasci intermedi Finestra temporale di rilascio definita in fase di approvazione Piu` approver (and/or) “Release notes” calcolate in automatico TFS Update 2 on-prem Source: http://blogs.msdn.com/b/visualstudioalm/archive/2016/01/08/vsts- release-management-plan-for-2016-h1.aspx
  • 18. Nuova Weltanschauung o evoluzione naturale?
  • 20. 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
  • 23. http://bit.ly/DOAW16FEED1 Dedicateci 2 minuti del vostro tempo, e ci aiuterete a crescere e migliorare! Track Intro http://bit.ly/DOAW16FEED2 Track Avanzata

Editor's Notes

  1. https://github.com/giuliov/TfsGitAdmin https://github.com/giuliov/GitPushFilterPlugin https://github.com/tfsaggregator/tfsaggregator http://www.radiotfs.com/Show/105/TFSAggregator2withJesseHouwing
  2. La prima è ufficiale dalla versione italiana del sito Microsoft ma è talmente vaga che può essere applicata a cose diverse, ad esempio SCCM, se non fosse il termine DevOps DevOps «is a culture, movement or practice that emphasizes the collaboration and communication of both software developers and other information-technology (IT) professionals while automating the process of software delivery and infrastructure changes» - WikiPedia La seconda ci anticipa qualcosa sull’aspetto tecnologico, come è implementata questa funzionalità La terza spiega il termine vNext Ricordiamo un poco la storia, MS acquisice InRelease per coprire il gap in attesa di una soluzione integrate che è appunto vNext Per ultimo osserviamo l’aspetto di processo Da notare Delivery non Deployment ma ci torneremo sopra
  3. Nota con VSTS cloud non significa pubblico! https://giuliovdev.visualstudio.com/DefaultCollection/_git/RMDemo2016H1
  4. bagigi
  5. Entrambe le cose: c’è stata un completo rifacimento dell’implementazione, MA è una evoluzione di Build.vNext A livello di gestione si possono migliorare diverse cose, però le fondamenta sono in essere e solide Mi auguro vedere una esplosione di task orientati più ad una fase logica di processo che ad una tecnologia, ad esempio per un roll-out graduale
  6. Cosa non abbiamo visto? Non-Windows agents and platoforms