tfs extensions: novas possibilidades para integrar suas iniciativas de devops ao tfs

Post on 26-Jan-2017

314 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Globalcode – Open4education

Trilha – DevOps .Net

TFS Extensions Novas possibilidades para integrar suas iniciativas de DevOps ao TFS

Igor Rosa MacedoConsultor DevOps | ESX

Globalcode – Open4education

AgendaDevOps: Porque ferramentas flexíveis são importantes para DevOps?Conceito: Customização/Configuração, Integração e ExtensãoTFS/VSTS: possibilidades antes das extensões TFS/VSTS: novas possibilidades

MarketplaceExtensões e integrações

Cenários de aplicação:Gestão de Demandas: Custom HubBuild VS2003: Build Task

Passo a passo: criando uma extensão:

Globalcode – Open4education

DevOps

Globalcode – Open4education

DevOps

Globalcode – Open4education

DevOps

Globalcode – Open4education

DevOps

• Colaboração • Automação • Feedback

Valor para o negócio

Globalcode – Open4education

DevOps não é:

• Processo • Metodologia • Framework• Cargo• Ferramenta

Globalcode – Open4education

DevOps

• Pessoas • Processos • Ferramentas

Globalcode – Open4education

Ferramentas Flexíveis

• Configuração/Customização

• Extensão• Integração

Globalcode – Open4education

Customização

Globalcode – Open4education

Customização (TFS/VSTS)

• Process Template• Workitem Types;• Fields;• Workflow;

Globalcode – Open4education

Customização (TFS/VSTS)

• Backlog• Board

Globalcode – Open4education

• Queries• Relatórios

Customização (TFS/VSTS)

Globalcode – Open4education

• Alertas Customização (TFS/VSTS)

Globalcode – Open4education

• Permissões e Grupos de Permissões Customização (TFS/VSTS)

Globalcode – Open4education

• DashboardsCustomização (TFS/VSTS)

Globalcode – Open4education

Extensão

• Server Plugins* • Scheduled Jobs*• Build• Release

*Somente no TFS (on-premises)

Globalcode – Open4education

Integração

• Service Hooks• Server Plugins* • Scheduled Jobs*• Alertas• Build• Release

*Somente no TFS (on-premises)

Globalcode – Open4education

Marketplace

Globalcode – Open4education

VSTS/TFS ExtensionsAn extension uses Microsoft-provided APIs to install/plug into a Microsoft product.

Globalcode – Open4education

VSTS/TFS ExtensionsAn integration is a product, tool, or service that integrations with a Microsoft product in some way, but does not install into that Microsoft product directly.

Globalcode – Open4education

Cenário1Gestão de Demandas

Demandas Aprovadas

Regulatory

Operation

Business

BuildFontes QA ProduçãoReleaseWorkitems

Globalcode – Open4education

Cenário1

Globalcode – Open4education

Hub Extension

Globalcode – Open4education

Cenario2

Build

MSBuild

Legado

Globalcode – Open4education

Build Task

Globalcode – Open4education

Pontos de Extensão

Hubs e Hubs Group

Globalcode – Open4education

Pontos de Extensão

Add backlog tabs

Globalcode – Open4education

Pontos de Extensão

Menus e toolbars

Globalcode – Open4education

Pontos de Extensão

Workitem form

• Add a group to the main page• Add a page (tab)• Add an action to the context menu• Listen for events on the form

Globalcode – Open4education

Pontos de Extensão

Dashboard Widgets

Globalcode – Open4education

Pontos de Extensão

Build e Deploy Tasks

Globalcode – Open4education

Passo a passo1.Criar a extensão:

• SDK;• Icone;• Manifest;• Conteúdo (scripts, html, css,

images);2.Empacotar (vsix); 3.Publicar:

• Criar Publisher;• Realizar upload;

4.Compartilhar;5.Disponibilizar para todos;

Globalcode – Open4education

Visual Studio Services Web Extension SDK

https://github.com/Microsoft/vss-web-extension-sdk

Globalcode – Open4education

Visual Studio Services Web Extension SDK

https://github.com/Microsoft/vss-web-extension-sdk

Globalcode – Open4education

Visual Studio Services Web Extension SDK

Globalcode – Open4education

Manifest

Core properties

Globalcode – Open4education

ManifestDiscovery properties

Globalcode – Open4education

ManifestRuntime properties

Globalcode – Open4education

Hospedagem do conteúdo

• Interno (VSTS/TFS);

• Externo;

Globalcode – Open4education

Armazenamento de dados

Settings: simple key-value settings (like user preferences)

Documents: collections of similar complex objects (documents)

Globalcode – Open4education

EmpacotamentoTFX-CLI

Globalcode – Open4education

Publicando

• Criar Publisher;• Upload vsix (portal ou Tfx-cli);

http://aka.ms/vsmarketplace-manage

Globalcode – Open4education

Compartilhando

Globalcode – Open4education

Tornando Público

“Send an email to vsmarketplace@microsoft.com• Use the subject Publisher verification request• Include your publisher ID in the e-mail

• Send from your organization/company e-mail address • Share details of your association with a business/company and other

information such as• Link to your site • Link to your LinkedIn account • Link to your GitHub account • Link to your blog

• Share details about your extension/integration• Microsoft will respond within 2 business days”

• Verificação do publisher

Globalcode – Open4education

Tornando Público

• True na flag public do Manifest; • Empacotar e republicar;

Globalcode – Open4education

Referências

https://www.visualstudio.com/en-us/docs/integrate/extensions/overview

Documentação sobre extensões

https://github.com/Microsoft/vss-web-extension-sdk

Documentação da SDK

https://github.com/Microsoft/vsts-extension-samples

Exemplos

https://visualstudiogallery.msdn.microsoft.com/a00f6cfc-4dbb-4b9a-a1b8-4d24bf46770b

Visual Studio Project Template

Globalcode – Open4education

Obrigado!

@igorgugabr.linkedin.com/in/igormacedohttp://igormacedo.com.br

igor.macedo@esx.com.br

top related