SlideShare a Scribd company logo
Davide Benvegnù
Integrazione con
Visual Studio Online
#VSOAPI
DAVIDE BENVEGNU’
 Managing Director & CTO – DBTek Ltd
 Microsoft MVP in Visual Studio ALM
 Membro di DotNetToscana e GetLatestVersion
 Speaker a eventi nazionali (Community Days, SMAU, Festival ICT…)
 Trainer (corso su Microsoft Virtual Academy - bit.ly/MVAVSOIT)
 Guest post MSDN
 GitHub (n3wt0n) – NuGet (DBTek) – SlideShare (n3wt0n)
@davidebenvegnu – www.davidebenvegnu.com – blog.dbtek.it
Chi sono
#VSOAPI
 Introduzione
 Rest API
 Service Hooks
 Altro
Agenda
#VSOAPI
 02/02/2015 – Introduzione a Visual Studio Online
 02/03/2015 – Gestione del codice sorgente con Visual Studio Online
 13/04/2015 – Continuous Integration con Visual Studio Online
 04/05/2015 – Cloud Load Testing con Visual Studio Online
 17/09/2015 – Integrazione con VSO: Rest API & Service Hooks
Serie
#VSOAPI
#VSOAPI
Integrazione con Visual Studio Online
Introduzione
REST API Service Hooks
Metodi di integrazione
#VSOAPI
 Integrare VSO con i più popolari servizi cloud come Trello, GitHub,
Jenkins, HipChat e molti altri
 Sviluppare applicazioni e servizi custom che estendono la potenzialità
di Visual Studio Online
 Utilizzare VSO da qualsiasi piattaforma (anche mobile)
Perchè
#VSOAPI
#VSOAPI
Integrazione con Visual Studio Online
REST Open API
 Sfruttano il protocollo REST ed utilizzano Json
 Pattern predefinito
 VERB https://{account}.VisualStudio.com/DefaultCollection/_apis[/{area}]/{resource}?api-version=1.0
 Servizio autenticato
 Basic
 Personal Access Token
 OAuth 2.0
Rest API
#VSOAPI
 Autenticazione Basic
 Richiede l’abilitazione delle «Alternate Credentials»
 Credenziali passate nell’header della richiesta
 Accesso alle aree «Account» e «Profiles» non possibile
 Personal Access Token – 7 luglio
 Funzionano come le Alternate Credentials
 Autenticazione: username qualsiasi e Token come password
 Fine Tuning sulle aree visibili e sulle funzionalità utilizzabili
 Token multipli per singolo utente
Rest API: Autenticazione
#VSOAPI
 Autenticazione con OAuth 2.0
 Registrare l‘app su https://app.vssps.visualstudio.com/app/register per
ottenere un ID univoco
 Chiamare le API con l’ID per ottenere il token
 Il token ha validità temporale limitata, va eventualmente rinnovato
 Funziona solo via Web (non usabile in App)
 Non accetta «localhost» come url di callback
Rest API: Autenticazione
#VSOAPI
 Account, Profili
 Build, Build 2.0
 Cloud Load Test, Test Management
 Git, TFVC, Code Policy
 Projects
 Service Hooks
 Team, Team Room
 Work (board, card, iteration, …), Process
 Work Item
https://www.visualstudio.com/integrate/api/overview
Aree Disponibili dalle API
#VSOAPI
#VSOAPI
Integrazione con Visual Studio Online
BugGuardian
Demo
#VSOAPI
Integrazione con Visual Studio Online
Service Hooks
 Servizi che notificano eventi ai «consumatori» tramite una
sottoscrizione
Cosa sono?
#VSOAPI
Tramite i Service Hooks è possibile integrarsi a VSO e TFS
sottoscrivendo una serie di eventi che sono scatenati dal servizio:
 Build completed
 Code pushed (Git team projects)
 Code checked in (TFVC team projects)
 Work item created
 Work item updated
 Comments added to work item
Eventi
#VSOAPI
 Sottoscrizioni a uno o più eventi
 Sottoscrizione:
 A uno specifico Team Project
 Consumata da un “consumer”
 Scatena una specifica “action”
 Creazione di una sottoscrizione:
 Usando il portale
 Usando le REST API
Sottoscrizioni
#VSOAPI
 Serie di “consumer” già definiti dalla piattaforma
 È possibile configurare consumer custom
 Chiamate web
 A seconda del tipo di consumer selezionato:
 sono disponibili o meno alcuni eventi ed azioni
 è necessario indicare configurazioni specifiche
Consumer
#VSOAPI
#VSOAPI
Integrazione con Visual Studio Online
Integrazione con Trello
Demo
#VSOAPI
Integrazione con Visual Studio Online
Altro…
 4 librerie, disponibili su NuGet
 Includono supporto a Rest API e all’OM classico
 VSO + TFS2015: supporto Rest API
 TFS 2013 e precedenti: solo OM
 Molte dipendenze
.NET client libraries per VSO (e TFS)
#VSOAPI
Microsoft websites:
 http://www.visualstudio.com/explore/app-lifecycle-management-vs
 http://msdn.microsoft.com/vstudio/ff637362.aspx
Visual Studio ALM Rangers:
 http://aka.ms/vsarsolutions
Blog
 http://blog.dbtek.it
GetLatestVersion:
 http://www.getlatestversion.it/
Riferimenti
#VSOAPI
21/09/2015 – Sviluppo a 360° con Visual Studio 2015:
 Pisa – LED, Sala Seminari Est, Dip. Informatica, Università di Pisa
 http://www.dotnettoscana.org/sviluppare-a-360-con-visual-studio-
2015.aspx
01/10/2015 – Webcast: Migrare le solution a Office 365
14/10/2015 – Webcast: Da GitHub a NuGet con la nuova Build di VSO
28/10/2015 – Webcast: Documentare le WebAPI con Swagger
Eventi fisici in Ottobre e Dicembre (Stay Tuned )
Prossimi Eventi
#VSOIntro
Introduzione a Visual Studio Online
Davide Benvegnù
GRAZIE!
#VSOIntro

More Related Content

What's hot

Blazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo GrecoBlazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo Greco
Giuneco S.r.l
 
MVVM senza fronzoli con Caliburn.Micro
MVVM senza fronzoli con Caliburn.MicroMVVM senza fronzoli con Caliburn.Micro
MVVM senza fronzoli con Caliburn.Micro
Marco Amendola
 
ASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivatiASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivati
Andrea Dottor
 
Selenium e testing web - di Alessio Benedetti
Selenium e testing web - di Alessio BenedettiSelenium e testing web - di Alessio Benedetti
Selenium e testing web - di Alessio Benedetti
Giuneco S.r.l
 
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaMulti-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
Andrea Dottor
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
Davide Benvegnù
 
App Mobile Powerapps
App Mobile PowerappsApp Mobile Powerapps
App Mobile Powerapps
Giuneco S.r.l
 
Cognitive Services & LUIS
Cognitive Services & LUISCognitive Services & LUIS
Cognitive Services & LUIS
Massimo Bonanni
 
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016 Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
Codemotion
 
Progettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web DesignProgettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web Design
Salvatore Paone
 
Realizzare applicazioni cross-platform con Xamarin e il pattern MVVM
Realizzare applicazioni cross-platform con Xamarin e il pattern MVVMRealizzare applicazioni cross-platform con Xamarin e il pattern MVVM
Realizzare applicazioni cross-platform con Xamarin e il pattern MVVM
Codemotion
 
Utilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software DeveloperUtilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software DeveloperStefano Ottaviani
 
Angular js o React? Spunti e idee per la scelta di un framework
Angular js o React? Spunti e idee per la scelta di un frameworkAngular js o React? Spunti e idee per la scelta di un framework
Angular js o React? Spunti e idee per la scelta di un framework
Giovanni Buffa
 
UI Composition - Prism
UI Composition - PrismUI Composition - Prism
UI Composition - Prism
DotNetMarche
 
AngularJS – Reinventare le applicazioni web
AngularJS – Reinventare le applicazioni webAngularJS – Reinventare le applicazioni web
AngularJS – Reinventare le applicazioni webLuca Milan
 
Mob01 mobile services e webapi
Mob01   mobile services e webapiMob01   mobile services e webapi
Mob01 mobile services e webapiDotNetCampus
 
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del webASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
Andrea Dottor
 
Kivy Python Framework - di Gioele Gaggio
Kivy Python Framework - di Gioele GaggioKivy Python Framework - di Gioele Gaggio
Kivy Python Framework - di Gioele Gaggio
Giuneco S.r.l
 
Sviluppo di applicazioni web in ambito mobile
Sviluppo di applicazioni web in ambito mobileSviluppo di applicazioni web in ambito mobile
Sviluppo di applicazioni web in ambito mobile
Roberto Cappelletti
 
ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?
Giorgio Di Nardo
 

What's hot (20)

Blazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo GrecoBlazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo Greco
 
MVVM senza fronzoli con Caliburn.Micro
MVVM senza fronzoli con Caliburn.MicroMVVM senza fronzoli con Caliburn.Micro
MVVM senza fronzoli con Caliburn.Micro
 
ASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivatiASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivati
 
Selenium e testing web - di Alessio Benedetti
Selenium e testing web - di Alessio BenedettiSelenium e testing web - di Alessio Benedetti
Selenium e testing web - di Alessio Benedetti
 
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaMulti-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
 
App Mobile Powerapps
App Mobile PowerappsApp Mobile Powerapps
App Mobile Powerapps
 
Cognitive Services & LUIS
Cognitive Services & LUISCognitive Services & LUIS
Cognitive Services & LUIS
 
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016 Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
 
Progettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web DesignProgettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web Design
 
Realizzare applicazioni cross-platform con Xamarin e il pattern MVVM
Realizzare applicazioni cross-platform con Xamarin e il pattern MVVMRealizzare applicazioni cross-platform con Xamarin e il pattern MVVM
Realizzare applicazioni cross-platform con Xamarin e il pattern MVVM
 
Utilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software DeveloperUtilizzare Windows Vista come Software Developer
Utilizzare Windows Vista come Software Developer
 
Angular js o React? Spunti e idee per la scelta di un framework
Angular js o React? Spunti e idee per la scelta di un frameworkAngular js o React? Spunti e idee per la scelta di un framework
Angular js o React? Spunti e idee per la scelta di un framework
 
UI Composition - Prism
UI Composition - PrismUI Composition - Prism
UI Composition - Prism
 
AngularJS – Reinventare le applicazioni web
AngularJS – Reinventare le applicazioni webAngularJS – Reinventare le applicazioni web
AngularJS – Reinventare le applicazioni web
 
Mob01 mobile services e webapi
Mob01   mobile services e webapiMob01   mobile services e webapi
Mob01 mobile services e webapi
 
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del webASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
 
Kivy Python Framework - di Gioele Gaggio
Kivy Python Framework - di Gioele GaggioKivy Python Framework - di Gioele Gaggio
Kivy Python Framework - di Gioele Gaggio
 
Sviluppo di applicazioni web in ambito mobile
Sviluppo di applicazioni web in ambito mobileSviluppo di applicazioni web in ambito mobile
Sviluppo di applicazioni web in ambito mobile
 
ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?
 

Viewers also liked

CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo AzureCDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
Davide Benvegnù
 
Cloud Load Testing con Visual Studio Online
Cloud Load Testing con Visual Studio OnlineCloud Load Testing con Visual Studio Online
Cloud Load Testing con Visual Studio Online
Davide Benvegnù
 
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Davide Benvegnù
 
Continuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineContinuous Integration con Visual Studio Online
Continuous Integration con Visual Studio Online
Davide Benvegnù
 
legal
legallegal
Gestione del codice sorgente con Visual Studio Online
Gestione del codice sorgente con Visual Studio OnlineGestione del codice sorgente con Visual Studio Online
Gestione del codice sorgente con Visual Studio OnlineDavide Benvegnù
 
Linea de tiempo mundial
Linea  de tiempo   mundialLinea  de tiempo   mundial
Linea de tiempo mundial
Daniel Guzman
 
δημοσιες σχέσεις ψηφιακα μεσα & επικοινωνια
δημοσιες σχέσεις ψηφιακα μεσα & επικοινωνιαδημοσιες σχέσεις ψηφιακα μεσα & επικοινωνια
δημοσιες σχέσεις ψηφιακα μεσα & επικοινωνια
alexandrakost
 
δημόσιες σχέσεις
δημόσιες σχέσειςδημόσιες σχέσεις
δημόσιες σχέσειςalexandrakost
 
DevOps at scale: A true story - WIDS2016
DevOps at scale: A true story - WIDS2016DevOps at scale: A true story - WIDS2016
DevOps at scale: A true story - WIDS2016
Davide Benvegnù
 
Predictive Analytics con Microsoft Azure Machine Learning
Predictive Analytics con Microsoft Azure Machine LearningPredictive Analytics con Microsoft Azure Machine Learning
Predictive Analytics con Microsoft Azure Machine Learning
Davide Benvegnù
 

Viewers also liked (11)

CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo AzureCDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
 
Cloud Load Testing con Visual Studio Online
Cloud Load Testing con Visual Studio OnlineCloud Load Testing con Visual Studio Online
Cloud Load Testing con Visual Studio Online
 
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
 
Continuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineContinuous Integration con Visual Studio Online
Continuous Integration con Visual Studio Online
 
legal
legallegal
legal
 
Gestione del codice sorgente con Visual Studio Online
Gestione del codice sorgente con Visual Studio OnlineGestione del codice sorgente con Visual Studio Online
Gestione del codice sorgente con Visual Studio Online
 
Linea de tiempo mundial
Linea  de tiempo   mundialLinea  de tiempo   mundial
Linea de tiempo mundial
 
δημοσιες σχέσεις ψηφιακα μεσα & επικοινωνια
δημοσιες σχέσεις ψηφιακα μεσα & επικοινωνιαδημοσιες σχέσεις ψηφιακα μεσα & επικοινωνια
δημοσιες σχέσεις ψηφιακα μεσα & επικοινωνια
 
δημόσιες σχέσεις
δημόσιες σχέσειςδημόσιες σχέσεις
δημόσιες σχέσεις
 
DevOps at scale: A true story - WIDS2016
DevOps at scale: A true story - WIDS2016DevOps at scale: A true story - WIDS2016
DevOps at scale: A true story - WIDS2016
 
Predictive Analytics con Microsoft Azure Machine Learning
Predictive Analytics con Microsoft Azure Machine LearningPredictive Analytics con Microsoft Azure Machine Learning
Predictive Analytics con Microsoft Azure Machine Learning
 

Similar to Integrazione con Visual Studio Online

Ibm bluemix r pozzi
Ibm bluemix r pozziIbm bluemix r pozzi
Ibm bluemix r pozzi
Roberto Pozzi
 
Sharepoint 2010 JQuery
Sharepoint 2010  JQuerySharepoint 2010  JQuery
Sharepoint 2010 JQuery
Decatec
 
Creare PWA con Angular
Creare PWA con AngularCreare PWA con Angular
Creare PWA con Angular
Francesco Sciuti
 
Swagger per tutti
Swagger per tuttiSwagger per tutti
Swagger per tutti
Nicolò Carandini
 
Giornata aperta sul web 2017 - Workshop WordPress
Giornata aperta sul web 2017 - Workshop WordPressGiornata aperta sul web 2017 - Workshop WordPress
Giornata aperta sul web 2017 - Workshop WordPress
Marco Milesi
 
Integrazione continua con TFS Build
Integrazione continua con TFS BuildIntegrazione continua con TFS Build
Integrazione continua con TFS Build
Gian Maria Ricci
 
Win05 accesso ai dati in win 8
Win05   accesso ai dati in win 8Win05   accesso ai dati in win 8
Win05 accesso ai dati in win 8DotNetCampus
 
Win02 bing e windows store apps
Win02   bing e windows store appsWin02   bing e windows store apps
Win02 bing e windows store appsDotNetCampus
 
EtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows BridgeEtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows Bridge
Gaetano Paternò
 
Webkit meets native development
Webkit meets native developmentWebkit meets native development
Webkit meets native development
Nicholas Valbusa
 
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
Simone Chiaretta
 
DotNetCampus 2014 - BING e Windows Store App
DotNetCampus 2014 - BING e Windows Store AppDotNetCampus 2014 - BING e Windows Store App
DotNetCampus 2014 - BING e Windows Store App
Massimo Bonanni
 
WordPress REST API
WordPress REST APIWordPress REST API
WordPress REST API
Francesco Carlucci
 
Modi innovativi per costruire App
Modi innovativi per costruire AppModi innovativi per costruire App
Modi innovativi per costruire App
Commit University
 
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Roberto Albano
 
Niccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWTNiccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWT
firenze-gtug
 
Gamemate - Design and Prototypical Implementation of an Architecture for shar...
Gamemate - Design and Prototypical Implementation of an Architecture for shar...Gamemate - Design and Prototypical Implementation of an Architecture for shar...
Gamemate - Design and Prototypical Implementation of an Architecture for shar...
Alessandro Sanino
 
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...DotNetCampus
 
DevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile EngagementDevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile Engagement
Roberto Albano
 
Azure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloudAzure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloud
Davide Benvegnù
 

Similar to Integrazione con Visual Studio Online (20)

Ibm bluemix r pozzi
Ibm bluemix r pozziIbm bluemix r pozzi
Ibm bluemix r pozzi
 
Sharepoint 2010 JQuery
Sharepoint 2010  JQuerySharepoint 2010  JQuery
Sharepoint 2010 JQuery
 
Creare PWA con Angular
Creare PWA con AngularCreare PWA con Angular
Creare PWA con Angular
 
Swagger per tutti
Swagger per tuttiSwagger per tutti
Swagger per tutti
 
Giornata aperta sul web 2017 - Workshop WordPress
Giornata aperta sul web 2017 - Workshop WordPressGiornata aperta sul web 2017 - Workshop WordPress
Giornata aperta sul web 2017 - Workshop WordPress
 
Integrazione continua con TFS Build
Integrazione continua con TFS BuildIntegrazione continua con TFS Build
Integrazione continua con TFS Build
 
Win05 accesso ai dati in win 8
Win05   accesso ai dati in win 8Win05   accesso ai dati in win 8
Win05 accesso ai dati in win 8
 
Win02 bing e windows store apps
Win02   bing e windows store appsWin02   bing e windows store apps
Win02 bing e windows store apps
 
EtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows BridgeEtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows Bridge
 
Webkit meets native development
Webkit meets native developmentWebkit meets native development
Webkit meets native development
 
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
 
DotNetCampus 2014 - BING e Windows Store App
DotNetCampus 2014 - BING e Windows Store AppDotNetCampus 2014 - BING e Windows Store App
DotNetCampus 2014 - BING e Windows Store App
 
WordPress REST API
WordPress REST APIWordPress REST API
WordPress REST API
 
Modi innovativi per costruire App
Modi innovativi per costruire AppModi innovativi per costruire App
Modi innovativi per costruire App
 
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
 
Niccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWTNiccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWT
 
Gamemate - Design and Prototypical Implementation of an Architecture for shar...
Gamemate - Design and Prototypical Implementation of an Architecture for shar...Gamemate - Design and Prototypical Implementation of an Architecture for shar...
Gamemate - Design and Prototypical Implementation of an Architecture for shar...
 
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
 
DevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile EngagementDevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile Engagement
 
Azure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloudAzure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloud
 

More from Davide Benvegnù

DevSecOps Done Right - Strategies and Tools.pptx
DevSecOps Done Right - Strategies and Tools.pptxDevSecOps Done Right - Strategies and Tools.pptx
DevSecOps Done Right - Strategies and Tools.pptx
Davide Benvegnù
 
Secure Your Open Source Projects For Free
Secure Your Open Source Projects For FreeSecure Your Open Source Projects For Free
Secure Your Open Source Projects For Free
Davide Benvegnù
 
Microsoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and AzureMicrosoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and Azure
Davide Benvegnù
 
All Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of WorkAll Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of Work
Davide Benvegnù
 
CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions
 CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions  CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions
CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions
Davide Benvegnù
 
GitHub Actions: your free CI engine (and much more)
GitHub Actions: your free CI engine (and much more)GitHub Actions: your free CI engine (and much more)
GitHub Actions: your free CI engine (and much more)
Davide Benvegnù
 
Life of a Remote Developer - Productivity tips (MSBuild 2020)
Life of a Remote Developer - Productivity tips (MSBuild 2020)Life of a Remote Developer - Productivity tips (MSBuild 2020)
Life of a Remote Developer - Productivity tips (MSBuild 2020)
Davide Benvegnù
 
Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...
Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...
Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...
Davide Benvegnù
 
Debugging and Interacting with Production Applications - MS Online Tech Forum
Debugging and Interacting with Production Applications - MS Online Tech ForumDebugging and Interacting with Production Applications - MS Online Tech Forum
Debugging and Interacting with Production Applications - MS Online Tech Forum
Davide Benvegnù
 
Architect your app modernization journey with containers on Microsoft Azure
Architect your app modernization journey with containers on Microsoft AzureArchitect your app modernization journey with containers on Microsoft Azure
Architect your app modernization journey with containers on Microsoft Azure
Davide Benvegnù
 
Build 2019 HK - Deep Dive notable announcements
Build 2019 HK - Deep Dive notable announcementsBuild 2019 HK - Deep Dive notable announcements
Build 2019 HK - Deep Dive notable announcements
Davide Benvegnù
 
How I choose which services to use in Azure
How I choose which services to use in AzureHow I choose which services to use in Azure
How I choose which services to use in Azure
Davide Benvegnù
 
Secure your applications with Azure AD and Key Vault
Secure your applications with Azure AD and Key VaultSecure your applications with Azure AD and Key Vault
Secure your applications with Azure AD and Key Vault
Davide Benvegnù
 
Microservices with Azure Service Fabric
Microservices with Azure Service FabricMicroservices with Azure Service Fabric
Microservices with Azure Service Fabric
Davide Benvegnù
 
Develop a Serverless Integration Platform for the Enterprise
Develop a Serverless Integration Platform for the EnterpriseDevelop a Serverless Integration Platform for the Enterprise
Develop a Serverless Integration Platform for the Enterprise
Davide Benvegnù
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
Davide Benvegnù
 
SharePoint Disaster Recovery in Microsoft Azure
SharePoint Disaster Recovery in Microsoft AzureSharePoint Disaster Recovery in Microsoft Azure
SharePoint Disaster Recovery in Microsoft Azure
Davide Benvegnù
 
Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...
Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...
Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...
Davide Benvegnù
 
VS2017PI - Le novità di visual studio team services
VS2017PI - Le novità di visual studio team servicesVS2017PI - Le novità di visual studio team services
VS2017PI - Le novità di visual studio team services
Davide Benvegnù
 
Accelerate Your Bot Development with DevOps
Accelerate Your Bot Development with DevOpsAccelerate Your Bot Development with DevOps
Accelerate Your Bot Development with DevOps
Davide Benvegnù
 

More from Davide Benvegnù (20)

DevSecOps Done Right - Strategies and Tools.pptx
DevSecOps Done Right - Strategies and Tools.pptxDevSecOps Done Right - Strategies and Tools.pptx
DevSecOps Done Right - Strategies and Tools.pptx
 
Secure Your Open Source Projects For Free
Secure Your Open Source Projects For FreeSecure Your Open Source Projects For Free
Secure Your Open Source Projects For Free
 
Microsoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and AzureMicrosoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and Azure
 
All Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of WorkAll Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of Work
 
CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions
 CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions  CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions
CI CD per .Net 5? Facile con Azure Pipelines e GitHub Actions
 
GitHub Actions: your free CI engine (and much more)
GitHub Actions: your free CI engine (and much more)GitHub Actions: your free CI engine (and much more)
GitHub Actions: your free CI engine (and much more)
 
Life of a Remote Developer - Productivity tips (MSBuild 2020)
Life of a Remote Developer - Productivity tips (MSBuild 2020)Life of a Remote Developer - Productivity tips (MSBuild 2020)
Life of a Remote Developer - Productivity tips (MSBuild 2020)
 
Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...
Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...
Consolidating Infrastructure with Azure Kubernetes Service - MS Online Tech F...
 
Debugging and Interacting with Production Applications - MS Online Tech Forum
Debugging and Interacting with Production Applications - MS Online Tech ForumDebugging and Interacting with Production Applications - MS Online Tech Forum
Debugging and Interacting with Production Applications - MS Online Tech Forum
 
Architect your app modernization journey with containers on Microsoft Azure
Architect your app modernization journey with containers on Microsoft AzureArchitect your app modernization journey with containers on Microsoft Azure
Architect your app modernization journey with containers on Microsoft Azure
 
Build 2019 HK - Deep Dive notable announcements
Build 2019 HK - Deep Dive notable announcementsBuild 2019 HK - Deep Dive notable announcements
Build 2019 HK - Deep Dive notable announcements
 
How I choose which services to use in Azure
How I choose which services to use in AzureHow I choose which services to use in Azure
How I choose which services to use in Azure
 
Secure your applications with Azure AD and Key Vault
Secure your applications with Azure AD and Key VaultSecure your applications with Azure AD and Key Vault
Secure your applications with Azure AD and Key Vault
 
Microservices with Azure Service Fabric
Microservices with Azure Service FabricMicroservices with Azure Service Fabric
Microservices with Azure Service Fabric
 
Develop a Serverless Integration Platform for the Enterprise
Develop a Serverless Integration Platform for the EnterpriseDevelop a Serverless Integration Platform for the Enterprise
Develop a Serverless Integration Platform for the Enterprise
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
 
SharePoint Disaster Recovery in Microsoft Azure
SharePoint Disaster Recovery in Microsoft AzureSharePoint Disaster Recovery in Microsoft Azure
SharePoint Disaster Recovery in Microsoft Azure
 
Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...
Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...
Microsoft TechSummit - Deploy your Solution to IaaS and PaaS with VSTS and Az...
 
VS2017PI - Le novità di visual studio team services
VS2017PI - Le novità di visual studio team servicesVS2017PI - Le novità di visual studio team services
VS2017PI - Le novità di visual studio team services
 
Accelerate Your Bot Development with DevOps
Accelerate Your Bot Development with DevOpsAccelerate Your Bot Development with DevOps
Accelerate Your Bot Development with DevOps
 

Integrazione con Visual Studio Online

  • 2. DAVIDE BENVEGNU’  Managing Director & CTO – DBTek Ltd  Microsoft MVP in Visual Studio ALM  Membro di DotNetToscana e GetLatestVersion  Speaker a eventi nazionali (Community Days, SMAU, Festival ICT…)  Trainer (corso su Microsoft Virtual Academy - bit.ly/MVAVSOIT)  Guest post MSDN  GitHub (n3wt0n) – NuGet (DBTek) – SlideShare (n3wt0n) @davidebenvegnu – www.davidebenvegnu.com – blog.dbtek.it Chi sono #VSOAPI
  • 3.  Introduzione  Rest API  Service Hooks  Altro Agenda #VSOAPI
  • 4.  02/02/2015 – Introduzione a Visual Studio Online  02/03/2015 – Gestione del codice sorgente con Visual Studio Online  13/04/2015 – Continuous Integration con Visual Studio Online  04/05/2015 – Cloud Load Testing con Visual Studio Online  17/09/2015 – Integrazione con VSO: Rest API & Service Hooks Serie #VSOAPI
  • 5. #VSOAPI Integrazione con Visual Studio Online Introduzione
  • 6. REST API Service Hooks Metodi di integrazione #VSOAPI
  • 7.  Integrare VSO con i più popolari servizi cloud come Trello, GitHub, Jenkins, HipChat e molti altri  Sviluppare applicazioni e servizi custom che estendono la potenzialità di Visual Studio Online  Utilizzare VSO da qualsiasi piattaforma (anche mobile) Perchè #VSOAPI
  • 8. #VSOAPI Integrazione con Visual Studio Online REST Open API
  • 9.  Sfruttano il protocollo REST ed utilizzano Json  Pattern predefinito  VERB https://{account}.VisualStudio.com/DefaultCollection/_apis[/{area}]/{resource}?api-version=1.0  Servizio autenticato  Basic  Personal Access Token  OAuth 2.0 Rest API #VSOAPI
  • 10.  Autenticazione Basic  Richiede l’abilitazione delle «Alternate Credentials»  Credenziali passate nell’header della richiesta  Accesso alle aree «Account» e «Profiles» non possibile  Personal Access Token – 7 luglio  Funzionano come le Alternate Credentials  Autenticazione: username qualsiasi e Token come password  Fine Tuning sulle aree visibili e sulle funzionalità utilizzabili  Token multipli per singolo utente Rest API: Autenticazione #VSOAPI
  • 11.  Autenticazione con OAuth 2.0  Registrare l‘app su https://app.vssps.visualstudio.com/app/register per ottenere un ID univoco  Chiamare le API con l’ID per ottenere il token  Il token ha validità temporale limitata, va eventualmente rinnovato  Funziona solo via Web (non usabile in App)  Non accetta «localhost» come url di callback Rest API: Autenticazione #VSOAPI
  • 12.  Account, Profili  Build, Build 2.0  Cloud Load Test, Test Management  Git, TFVC, Code Policy  Projects  Service Hooks  Team, Team Room  Work (board, card, iteration, …), Process  Work Item https://www.visualstudio.com/integrate/api/overview Aree Disponibili dalle API #VSOAPI
  • 13. #VSOAPI Integrazione con Visual Studio Online BugGuardian Demo
  • 14. #VSOAPI Integrazione con Visual Studio Online Service Hooks
  • 15.  Servizi che notificano eventi ai «consumatori» tramite una sottoscrizione Cosa sono? #VSOAPI
  • 16. Tramite i Service Hooks è possibile integrarsi a VSO e TFS sottoscrivendo una serie di eventi che sono scatenati dal servizio:  Build completed  Code pushed (Git team projects)  Code checked in (TFVC team projects)  Work item created  Work item updated  Comments added to work item Eventi #VSOAPI
  • 17.  Sottoscrizioni a uno o più eventi  Sottoscrizione:  A uno specifico Team Project  Consumata da un “consumer”  Scatena una specifica “action”  Creazione di una sottoscrizione:  Usando il portale  Usando le REST API Sottoscrizioni #VSOAPI
  • 18.  Serie di “consumer” già definiti dalla piattaforma  È possibile configurare consumer custom  Chiamate web  A seconda del tipo di consumer selezionato:  sono disponibili o meno alcuni eventi ed azioni  è necessario indicare configurazioni specifiche Consumer #VSOAPI
  • 19. #VSOAPI Integrazione con Visual Studio Online Integrazione con Trello Demo
  • 20. #VSOAPI Integrazione con Visual Studio Online Altro…
  • 21.  4 librerie, disponibili su NuGet  Includono supporto a Rest API e all’OM classico  VSO + TFS2015: supporto Rest API  TFS 2013 e precedenti: solo OM  Molte dipendenze .NET client libraries per VSO (e TFS) #VSOAPI
  • 22. Microsoft websites:  http://www.visualstudio.com/explore/app-lifecycle-management-vs  http://msdn.microsoft.com/vstudio/ff637362.aspx Visual Studio ALM Rangers:  http://aka.ms/vsarsolutions Blog  http://blog.dbtek.it GetLatestVersion:  http://www.getlatestversion.it/ Riferimenti #VSOAPI
  • 23. 21/09/2015 – Sviluppo a 360° con Visual Studio 2015:  Pisa – LED, Sala Seminari Est, Dip. Informatica, Università di Pisa  http://www.dotnettoscana.org/sviluppare-a-360-con-visual-studio- 2015.aspx 01/10/2015 – Webcast: Migrare le solution a Office 365 14/10/2015 – Webcast: Da GitHub a NuGet con la nuova Build di VSO 28/10/2015 – Webcast: Documentare le WebAPI con Swagger Eventi fisici in Ottobre e Dicembre (Stay Tuned ) Prossimi Eventi #VSOIntro
  • 24. Introduzione a Visual Studio Online Davide Benvegnù GRAZIE! #VSOIntro