SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
ALM Summit Brasil 2012 – 27, 28/04/2012


 Customização de Políticas
de Check-in e de Geradores
                  de Dados
@IgorAbade
blog.lambda3.com.br/L3/IgorAbade
Agenda
3


    • Criação de Política de
      Check-in
    • Criação de Gerador de
      Dados
    • Criação de Regra de
      Análise de Código
4
Criação de Política de
Check-in
O que são políticas de check-in
                  • Recurso do TFS
                  • Valida pré-requisitos para
                    aceitar check-in
                     – “Tem work item associado?”
                     – “Tem comentário de check-in”?
                     – “Rodou os testes de unidade?”
                  • Roda no cliente
                  • Suporte no VS e Eclipse
Políticas de check-in pré-definidas
• Nativas no TFS
   –   Builds
   –   Code Analysis
   –   Tests
   –   Work Items
• TFS Power Tools
   –   Changeset Comments
   –   Custom Path
   –   Forbidden Patterns
   –   Work Item Query
Política de Check-in personalizada
• Crie um projeto Class Library
• Extenda PolicyBase
   Microsoft.TeamFoundation.VersionControl.Client.dll

• Marque classe como [Serializable]
• PolicyBase.Evaluate() permite examinar
   –   Quais arquivos estão no check-in
   –   Itens de trabalho associados
   –   Comentários de check-in
   –   Outras políticas de check-in
Criação de Política de Check-in
Instalando a política de check-in
• Visual Studio Extension         • TFS Power Tools
   – Criar projeto VSIX              – Criar pasta
                                       $/<Team Project>/
   – Referenciar Class Library         TeamProjectConfig/
     com a política no VSIX            CheckinPolicies no controle
   – Adicionar arquivo texto           de versão
     <nome do projeto>.pkgdef        – Adicionar DLLs com política de
   – Adicionar .pkgdef como            check-in à pasta do controle
     Asset no projeto                  de versão
                                     – Team Explorer, Team
   – Compilar e distribuir VSIX        Members, Personal Settings
                                     – “Download Now”
<nome do projeto>.pkgdef
[$RootKey$TeamFoundationSourceControlCheckin Policies]
“<nome do projeto"="$PackageFolder$<nome do projeto>.dll"
Pkgdef como Asset no VSIX
Instalando via TFS Power Tools
Lembrete!
• Políticas são executadas no cliente
• Assembly (DLL) da política deve ser
  instalada na máquina de cada
  desenvolvedor
• Configurações das políticas são
  armazenadas no servidor usando
  serialização binária
   – Todos devem ter a mesma versão da DLL
Criação de Gerador de
Dados
O que são geradores de dados
• Componente
  do Data
  Generation
  Plan
• Permite a
  geração de
  dados
  aleatórios
Criação de Gerador de Dados
Instalando o gerador de dados
• Criar o arquivo <nome do projeto>.Extensions.xml
• Descrever o gerador de dados dentro do arquivo XML
• Copiar os dois arquivos (DLL, XML) para
  C:Program FilesMicrosoft Visual Studio 10.0
  VSTSDBExtensions
<nome do projeto>.Extensions.xml
<?xml version="1.0" encoding="utf-8"?>
<extensions
  assembly=""
  version="1"
  xmlns="urn:Microsoft.Data.Schema.Extensions"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="urn:Microsoft.Data.Schema.Extensions
Microsoft.Data.Schema.Extensions.xsd">

 <extension
   type=“<nome do projeto>.<classe>Generator"
   assembly="<nome do projeto>, Version=1.0.0.0, Culture=neutral,
      PublicKeyToken=999999999999"
   enabled="true"/>

</extensions>
Conclusão
Para Saber Mais
20


     • Team Foundation Server SDK
       – tinyurl.com/Tfs2010Sdk
     • Blog do Time de Produto
       – blogs.msdn.com/VisualStudioAlm
     • Fórum MSDN
       – social.msdn.microsoft.com/Forums/en-US/tfsprocess/
www.lambda3.com.br

Mais conteúdo relacionado

Semelhante a ALM Summit 2012 - Customização de políticas de check-in e geradores de dados

Operações - Base de Conhecimento - Parte 02
Operações - Base de Conhecimento - Parte 02Operações - Base de Conhecimento - Parte 02
Operações - Base de Conhecimento - Parte 02Alan Carlos
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoAlvaro Viebrantz
 
Vixteam IDEA 9 Data Analytics
Vixteam IDEA 9 Data AnalyticsVixteam IDEA 9 Data Analytics
Vixteam IDEA 9 Data AnalyticsVIXTEAM
 
Workshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.jsWorkshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.jsFábio Elísio
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPArlindo Santos
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Daniel Makiyama
 
Revit architecture 2012_pt_iniciar_um_projeto
Revit architecture 2012_pt_iniciar_um_projetoRevit architecture 2012_pt_iniciar_um_projeto
Revit architecture 2012_pt_iniciar_um_projetoDouglas Morais
 
Flask e Docker - rumo a AWS!
Flask e Docker - rumo a AWS!Flask e Docker - rumo a AWS!
Flask e Docker - rumo a AWS!Ryan Padilha
 
Introdução ao framework CodeIgniter
Introdução ao framework CodeIgniterIntrodução ao framework CodeIgniter
Introdução ao framework CodeIgniterAnderson Gonçalves
 
TechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOpsTechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOpsAlan Carlos
 
Primeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JSPrimeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JSWemerson Januario
 
Visual Studio Summit 2013 - Patterns para criação de camadas de acesso a dados
Visual Studio Summit 2013 - Patterns para criação de camadas de acesso a dadosVisual Studio Summit 2013 - Patterns para criação de camadas de acesso a dados
Visual Studio Summit 2013 - Patterns para criação de camadas de acesso a dadosFernando Henrique
 
Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.Vinícius de Paula
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = ProdutividadeAdriano Bertucci
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...Amazon Web Services
 

Semelhante a ALM Summit 2012 - Customização de políticas de check-in e geradores de dados (20)

Operações - Base de Conhecimento - Parte 02
Operações - Base de Conhecimento - Parte 02Operações - Base de Conhecimento - Parte 02
Operações - Base de Conhecimento - Parte 02
 
VSTS de Ponta a Ponta
VSTS de Ponta a PontaVSTS de Ponta a Ponta
VSTS de Ponta a Ponta
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em Go
 
Vixteam IDEA 9 Data Analytics
Vixteam IDEA 9 Data AnalyticsVixteam IDEA 9 Data Analytics
Vixteam IDEA 9 Data Analytics
 
Workshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.jsWorkshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.js
 
Falando sobre DevOps no azure
Falando sobre DevOps no azureFalando sobre DevOps no azure
Falando sobre DevOps no azure
 
Python 07
Python 07Python 07
Python 07
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
 
Revit architecture 2012_pt_iniciar_um_projeto
Revit architecture 2012_pt_iniciar_um_projetoRevit architecture 2012_pt_iniciar_um_projeto
Revit architecture 2012_pt_iniciar_um_projeto
 
PHP 10 CodeIgniter
PHP 10 CodeIgniterPHP 10 CodeIgniter
PHP 10 CodeIgniter
 
Flask e Docker - rumo a AWS!
Flask e Docker - rumo a AWS!Flask e Docker - rumo a AWS!
Flask e Docker - rumo a AWS!
 
Introdução ao framework CodeIgniter
Introdução ao framework CodeIgniterIntrodução ao framework CodeIgniter
Introdução ao framework CodeIgniter
 
TechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOpsTechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOps
 
Primeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JSPrimeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JS
 
Visual Studio Summit 2013 - Patterns para criação de camadas de acesso a dados
Visual Studio Summit 2013 - Patterns para criação de camadas de acesso a dadosVisual Studio Summit 2013 - Patterns para criação de camadas de acesso a dados
Visual Studio Summit 2013 - Patterns para criação de camadas de acesso a dados
 
Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.
 
Desenvolvimento de CI/CD na AWS
Desenvolvimento de CI/CD na AWSDesenvolvimento de CI/CD na AWS
Desenvolvimento de CI/CD na AWS
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
 

Mais de Igor Abade

Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)Igor Abade
 
DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?Igor Abade
 
Serverless Computing no Microsoft Azure
Serverless Computing no Microsoft AzureServerless Computing no Microsoft Azure
Serverless Computing no Microsoft AzureIgor Abade
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoIgor Abade
 
Microsserviços .NET no Azure
Microsserviços .NET no AzureMicrosserviços .NET no Azure
Microsserviços .NET no AzureIgor Abade
 
Introdução ao Habitat
Introdução ao HabitatIntrodução ao Habitat
Introdução ao HabitatIgor Abade
 
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abadeAcelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abadeIgor Abade
 
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTSProvisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTSIgor Abade
 
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Igor Abade
 
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)Igor Abade
 
Desktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows StoreDesktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows StoreIgor Abade
 
Acelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidosAcelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidosIgor Abade
 
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Igor Abade
 
Suporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShellSuporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShellIgor Abade
 
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)Igor Abade
 
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Igor Abade
 
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)Igor Abade
 
Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...Igor Abade
 
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Igor Abade
 
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)Igor Abade
 

Mais de Igor Abade (20)

Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
 
DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?
 
Serverless Computing no Microsoft Azure
Serverless Computing no Microsoft AzureServerless Computing no Microsoft Azure
Serverless Computing no Microsoft Azure
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como código
 
Microsserviços .NET no Azure
Microsserviços .NET no AzureMicrosserviços .NET no Azure
Microsserviços .NET no Azure
 
Introdução ao Habitat
Introdução ao HabitatIntrodução ao Habitat
Introdução ao Habitat
 
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abadeAcelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
 
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTSProvisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
 
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
 
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
 
Desktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows StoreDesktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows Store
 
Acelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidosAcelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidos
 
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
 
Suporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShellSuporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShell
 
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
 
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
 
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
 
Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...
 
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
 
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
 

ALM Summit 2012 - Customização de políticas de check-in e geradores de dados

  • 1. ALM Summit Brasil 2012 – 27, 28/04/2012 Customização de Políticas de Check-in e de Geradores de Dados
  • 3. Agenda 3 • Criação de Política de Check-in • Criação de Gerador de Dados • Criação de Regra de Análise de Código
  • 5. O que são políticas de check-in • Recurso do TFS • Valida pré-requisitos para aceitar check-in – “Tem work item associado?” – “Tem comentário de check-in”? – “Rodou os testes de unidade?” • Roda no cliente • Suporte no VS e Eclipse
  • 6. Políticas de check-in pré-definidas • Nativas no TFS – Builds – Code Analysis – Tests – Work Items • TFS Power Tools – Changeset Comments – Custom Path – Forbidden Patterns – Work Item Query
  • 7. Política de Check-in personalizada • Crie um projeto Class Library • Extenda PolicyBase Microsoft.TeamFoundation.VersionControl.Client.dll • Marque classe como [Serializable] • PolicyBase.Evaluate() permite examinar – Quais arquivos estão no check-in – Itens de trabalho associados – Comentários de check-in – Outras políticas de check-in
  • 9. Instalando a política de check-in • Visual Studio Extension • TFS Power Tools – Criar projeto VSIX – Criar pasta $/<Team Project>/ – Referenciar Class Library TeamProjectConfig/ com a política no VSIX CheckinPolicies no controle – Adicionar arquivo texto de versão <nome do projeto>.pkgdef – Adicionar DLLs com política de – Adicionar .pkgdef como check-in à pasta do controle Asset no projeto de versão – Team Explorer, Team – Compilar e distribuir VSIX Members, Personal Settings – “Download Now”
  • 10. <nome do projeto>.pkgdef [$RootKey$TeamFoundationSourceControlCheckin Policies] “<nome do projeto"="$PackageFolder$<nome do projeto>.dll"
  • 11. Pkgdef como Asset no VSIX
  • 12. Instalando via TFS Power Tools
  • 13. Lembrete! • Políticas são executadas no cliente • Assembly (DLL) da política deve ser instalada na máquina de cada desenvolvedor • Configurações das políticas são armazenadas no servidor usando serialização binária – Todos devem ter a mesma versão da DLL
  • 15. O que são geradores de dados • Componente do Data Generation Plan • Permite a geração de dados aleatórios
  • 17. Instalando o gerador de dados • Criar o arquivo <nome do projeto>.Extensions.xml • Descrever o gerador de dados dentro do arquivo XML • Copiar os dois arquivos (DLL, XML) para C:Program FilesMicrosoft Visual Studio 10.0 VSTSDBExtensions
  • 18. <nome do projeto>.Extensions.xml <?xml version="1.0" encoding="utf-8"?> <extensions assembly="" version="1" xmlns="urn:Microsoft.Data.Schema.Extensions" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:Microsoft.Data.Schema.Extensions Microsoft.Data.Schema.Extensions.xsd"> <extension type=“<nome do projeto>.<classe>Generator" assembly="<nome do projeto>, Version=1.0.0.0, Culture=neutral, PublicKeyToken=999999999999" enabled="true"/> </extensions>
  • 20. Para Saber Mais 20 • Team Foundation Server SDK – tinyurl.com/Tfs2010Sdk • Blog do Time de Produto – blogs.msdn.com/VisualStudioAlm • Fórum MSDN – social.msdn.microsoft.com/Forums/en-US/tfsprocess/