Partilhar via


Personalizando o fluxo de trabalho do Lab Management

Você pode usar o modelo padrão de laboratório (LabDefaultTemplate) com ambientes de laboratório para automatizar a criação do aplicativo, implantando nova compilação em um ambiente de laboratório e executar testes na nova compilação.Para obter informações sobre como usar o modelo padrão do laboratório, consulte Como: criar um fluxo de trabalho de teste implantar compilação para um ambiente do SCVMM e Como: criar um fluxo de trabalho de teste implantar compilação para um ambiente padrão.No entanto, cada um criar, implantar e testar processo pode estar ligeiramente diferentes devido a requisitos diferentes.Por exemplo, um fluxo de trabalho pode exigir copiando os binários de teste do local de compilação regular, enquanto outro fluxo de trabalho precisa copiar os binários de teste de um local temporário.Ou um fluxo de trabalho pode exigir que um ambiente de laboratório é salva em uma biblioteca SCVMM testadores podem implantá-lo, enquanto outro fluxo de trabalho não salva todo o ambiente de laboratório.Porque o modelo padrão do laboratório é baseado em fluxo de trabalho de Windows 4.0, ele é totalmente extensível e personalizável, e você pode personalizar o LabDefaultTemplate para atender às suas necessidades específicas.Este tópico descreve as etapas gerais para personalizar o modelo padrão do laboratório.

Requisitos

  • Visual Studio Ultimate, Visual Studio Premium, Visual Studio Test Professional

Aqui estão alguns cenários em que a personalização do modelo padrão de laboratório é útil:

  • Personalização para especificar o local de binários de teste diferente do local de destino de compilação

  • Personalização para suportar instaladores de aplicativos que exigem a reinicialização do computador após a implantação

  • Personalização para ler arquivos de controle de origem

  • Personalização para acessar uma compilação soltar local usando a conta de agente de compilação

  • Personalização para acessar outros locais usando a conta de serviço do laboratório

Conceitos básicos de personalização de fluxo de trabalho

Há três principais conceitos envolvidos na personalização do fluxo de trabalho:

  • Modelo o modelo define a seqüência de atividades ou etapas que fazem parte do fluxo de trabalho.O modelo é baseado no Windows Workflow Foundation 4.0 e é armazenado como um arquivo. XAML no controle de origem.Para carregar o modelo no Editor de fluxo de trabalho, clique duas vezes no arquivo. XAML.No Editor, você poderá ver as diversas atividades e seqüências que determinam o fluxo de trabalho.Em seguida, você pode usar variáveis com escopos diferentes, lógica condicional, loops, e assim por diante para programar o modelo como faria com qualquer outra linguagem de programação.Windows Workflow Foundation permite que você personalize o modelo padrão de laboratório para atender às suas necessidades.

  • Atividades a atividade é o bloco de construção de um fluxo de trabalho e o modelo padrão do laboratório usa muitas atividades.Você pode localizar atividades adicionais de Toolbox sob o título Team Foundation Lab Management atividades.Para usar uma atividade no fluxo de trabalho, arraste-o na caixa de ferramentas para o Visual Studio Editor de fluxo de trabalho para o local apropriado no modelo.Você pode determinar os parâmetros de entrada e saídos, observando as propriedades da atividade.Para obter mais informações sobre cada atividade Lab Management, consulte Atividades de fluxo de trabalho Lab Management.Se as atividades que estão incluídas com o produto são insuficientes para atender às suas necessidades, você pode adicionar novas atividades.

  • Argumentos você pode criar novos argumentos de entrada para as entradas que você precisa do usuário e passar esses valores para as atividades.Escolha a argumentos na parte inferior da janela do Editor de fluxo de trabalho para ver os argumentos existentes.Se você criar novos argumentos, eles aparecerão na Criar parâmetros de processo seção de processo guia na definição de compilação.

Pense sobre esses conceitos como analisar dois exemplos a seguir onde a personalização é necessária.O primeiro exemplo fala sobre como alterar no argumento de uma atividade existente no modelo e o segundo exemplo fala sobre como adicionar novas atividades da caixa de ferramentas.Esses exemplos devem fornecer contexto suficiente para personalizar o modelo padrão do laboratório de acordo com a suas necessidades.

Antes de iniciar a personalização

Existem alguns geral as etapas que você deve concluir antes de começar a personalizar o modelo padrão do laboratório.O diagrama a seguir ilustra essas etapas.

Local da pasta de modelos de fluxo de trabalho padrão

Para se preparar para personalização

  1. Em Team Explorer, clique duas vezes o De controle de origem nó do seu projeto de equipe.

  2. Em Gerenciador de controle de origem, expanda a árvore de controle de origem e encontrar o $/ <Project_Name> / BuildProcessTemplates pasta.

  3. Mapear esta pasta para uma pasta local, por exemplo, C:\Sources.

  4. O arquivo LabDefaultTemplate.11.xaml com o botão direito e escolha Get Latest Version.

  5. Faça uma cópia do arquivo LabDefaultTemplate.11.xaml e dê a ele um novo nome, por exemplo, LabDefaultTemplate_customize.11.xaml

  6. Adicione esse novo arquivo ao controle de origem.

  7. Clique duas vezes no novo arquivo.O arquivo será aberto no Editor de fluxo de trabalho de Visual Studio.

Em seguida você irá personalizar a cópia feitas do modelo padrão de laboratório.

Personalização para especificar o local de binários de teste diferente do local de destino de compilação

O modelo de fluxo de trabalho padrão, LabDefaultTemplate, pressupõe que o local dos binários do teste é o mesmo que o local onde as compilações são descartadas.No entanto, sua situação, o código de teste pode não obter criado junto com o código do produto.Se isso ocorrer, você poderá personalizar o modelo para que os binários de teste são retirados de um local diferente.Essa personalização envolve três etapas, conforme mostrado na ilustração a seguir.

Arrastando uma atividade LabManagement da caixa de ferramentas

Ff934561.collapse_all(pt-br,VS.110).gifDefinição de um fluxo de trabalho no argumento para especificar o caminho de binários de teste

Para definir um argumento em

  1. Na parte inferior da janela do editor de fluxo de trabalho, clique o argumentos guia.

  2. Escolha criar o argumento.Na caixa de texto, digite o nome do argumento, por exemplo, TestBinariesLocation.No direção lista suspensa, escolha em.No tipo de argumento lista suspensa, escolha seqüência.

Ff934561.collapse_all(pt-br,VS.110).gifPassando um valor de argumento para a atividade de ExecuteRemoteTestRun

Essa atividade cria um teste remoto executado, aguarda até que a execução do teste for concluído e atualiza as informações de compilação com estatísticas de execução de teste.

Para passar o valor do argumento

  1. No editor de fluxo de trabalho, role para a atividade Executando testes.Embora o nome de exibição da atividade de testes de execução, a atividade de tipo é ExecuteRemoteTestRun.

  2. A atividade com o botão direito e escolha Propriedades.O Propriedades janela abre no canto inferior direito e exibe no-out-argumentos e desta atividade.Um no argumento desta atividade é TestDirectory, que define o caminho do local de binários de teste.

  3. No Propriedades janela, clique em TestDirectory.No final da linha, clique nas reticências (…).

  4. No Editor de expressão, digite TestBinariesLocation e, em seguida, escolha OK.

  5. Sobre o arquivo menu, escolha Salvar LabDefaultTemplate_customize.11.xaml

  6. Na barra de menu do Gerenciador de controle de origem, escolha a Check-in ícone.

Agora você pode usar o arquivo personalizado. XAML para criar novas definições de compilação.O novo no argumento TestBinariesLocation aparecerá na diverso seção a processo guia em sua definição de compilação e você pode atribuir um valor lá.

Personalização para suportar instaladores de aplicativos que exigem a reinicialização do computador após a implantação

O modelo padrão do laboratório, não reiniciar o ambiente de laboratório após implantar o aplicativo.Você poderá personalizar o modelo de suporte a aplicativos que podem exigir uma reinicialização após elas serem implantadas.Se você implantou o aplicativo manualmente em um ambiente de laboratório, seria reiniciar somente na máquina onde o aplicativo foi instalado.Visual StudioLab Management não oferece suporte a operações em máquinas virtuais em um ambiente.Conseqüentemente reiniciar uma máquina requer que todas as máquinas no ambiente de laboratório seja reiniciado.

Observação de cuidadoCuidado

Certifique-se de que seus scripts de implantação nunca reinicie a máquina.Se isso ocorrer, o agente de compilação, executando o script de implantação perderá a conexão com o controlador de compilação e pode interromper o fluxo de trabalho.

Reinicializar as máquinas virtuais após implantar nova compilação requer a adição de três atividades LabDefaultTemplate:

  1. Parar o ambiente

  2. Iniciar o ambiente

  3. Aguarde até que as máquinas virtuais para iniciar antes de continuar com o restante do fluxo de trabalho.

Ff934561.collapse_all(pt-br,VS.110).gifParar o ambiente

Você pode adicionar uma atividade do ambiente de parada para o modelo de fluxo de trabalho padrão, arrastando o StopLabEnvironment atividade a partir de Toolbox para o modelo de fluxo de trabalho e inicializar variáveis de atividade.

Para parar o ambiente

  1. No editor de fluxo de trabalho, vá até uma atividade com o nome de exibição Aplicativo implantação bem-sucedida.

  2. Sobre o modo menu, escolha Toolbox.Caixa de ferramentas é aberta no lado esquerdo e exibe uma lista do Team Foundation Build atividades.Percorra a lista de atividades até ver a lista de As atividades do Team Foundation Lab Management.

  3. Na caixa de ferramentas, escolha a StopLabEnvironment atividade.Arraste-o para o Editor de fluxo de trabalho e posicioná-lo antes de Aplicativo implantação bem-sucedida atividade.

  4. A atividade com o botão direito e clique em Propriedades.A janela Propriedades exibe no - e out-argumentos para esta atividade.Observe que o fluxo de trabalho já tem uma variável chamada LabEnvironmentUri que se refere ao ambiente de URI.

  5. Escolha a variáveis guia.A lista de variáveis é exibida.

  6. No LabEnvironmentUri linha e, na padrão coluna, clique duas vezes em Enter uma expressão VB.Na caixa de texto, digite LabEnvironmentUri.O editor exibirá quaisquer usos existentes do parâmetro e você pode selecionar o valor da lista em vez de digitá-lo.

Ff934561.collapse_all(pt-br,VS.110).gifIniciar o ambiente

Você pode adicionar uma atividade de ambiente inicial para o modelo padrão do laboratório, arrastando o StartLabEnvironment atividade a partir de Toolbox para o modelo de fluxo de trabalho e inicializar variáveis de atividade.

Para iniciar o ambiente

  1. Na caixa de ferramentas, escolha a StartLabEnvironment atividade.Arraste-o para o Editor de fluxo de trabalho e posicioná-lo antes de Aplicativo implantação bem-sucedida atividade mas depois o StopLabEnvironment atividade.

  2. A atividade com o botão direito e clique em Propriedades.A janela Propriedades exibe no - e out-argumentos para esta atividade.Novamente, observe o fluxo de trabalho já tem uma variável chamada LabEnvironmentUri, que se refere ao ambiente de URI.

    Escolha a variáveis guia.A lista de variável é exibida.

    No LabEnvironmentUri linha e, na padrão coluna, clique duas vezes em Enter uma expressão VB.Na caixa de texto, digite LabEnvironmentUri.O editor exibirá quaisquer usos existentes do parâmetro e você pode selecionar o valor da lista em vez de digitá-lo.

Ff934561.collapse_all(pt-br,VS.110).gifAguarde até que as máquinas de reinicialização antes de continuar com o restante do fluxo de trabalho.

Você pode adicionar o tempo de espera para as máquinas virtuais para Iniciar arrastando o atraso atividade a partir de Toolbox para o modelo de fluxo de trabalho e inicializar variáveis de atividade.Essa atividade está localizada na primitivos guia do Toolbox.

Esperar que as máquinas virtuais para iniciar

  1. Na caixa de ferramentas, escolha a primitivos guia.

  2. Clique o atraso atividade.Arraste-o para o Editor de fluxo de trabalho e posicioná-lo antes de Aplicativo implantação bem-sucedida atividade mas depois o StartLabEnvironment atividade.

  3. A atividade com o botão direito e clique em Propriedades.A janela Propriedades exibe no - e out-argumentos para esta atividade.Observe que o fluxo de trabalho já tem uma variável chamada duração, que se refere ao tempo de espera.

  4. No Propriedades janela, escolha duração e escolha as reticências (…).

  5. No Editor de expressão, digite o tempo de espera (por exemplo, 10 minutos) no formato TimeSpan.FromMinutes(10).

Depois que você modificou este modelo, check-in para controle de origem e usá-lo para criar uma nova definição de compilação para implantar aplicativos que exigem reiniciar após a instalação.

Personalização para ler arquivos de controle de origem

Se você cria atividades personalizadas e usá-los em seu modelo de fluxo de trabalho, certifique-se de que o agente de compilação se comunica usando a conta de serviço do laboratório, pode acessar essas atividades.Como essas atividades devem ser verificados sistema de controle de origem como assemblies personalizados, você deve Certifique-se de que essa conta de serviço do laboratório tem permissão para ler o caminho no qual os assemblies personalizados são verificados em.Para obter mais informações sobre a conta de serviço do laboratório, consulte Como configurar a conta de serviço de laboratório você pode conceder permissões para o serviço de laboratório conta usando o tf permissões comando.Por exemplo, para conceder permissões de leitura para o mydomain\labAccount de conta de serviço do laboratório no caminho $/ MyProject/CustomAssemblies, você deve executar um comando semelhante a:C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE>tf permission /user:mydomain\labAccount /collection:http://aseemb-tfs11:8080/tfs/Collection0 /allow:read $/MyProject/CustomAssemblies

Personalização para acessar uma compilação soltar local usando a conta de agente de compilação

O agente de compilação executa um fluxo de trabalho acessa o local de destino de compilação usando a conta de serviço do laboratório.Se você deseja que o agente de compilação para usar a conta de agente de compilação em vez disso, você pode personalizar o modelo padrão do laboratório.No modelo, encontrar a atividade RunDeploymentScript que executa os scripts de implantação.Essa atividade expõe a propriedade SharedLocationForNetUse, que define o local em que deve ser acessado usando a conta de serviço do laboratório.<mtlwa:RunDeploymentScript DisplayName="Running Deployment Script" ScriptDetails="[scriptDetails]" ThrowOnError="True" SharedLocationForNetUse="[BuildLocation]" />Para acessar o local de soltar sob a conta de agente de compilação em vez da conta de serviço do laboratório, excluir a propriedade do modelo ou definir o valor desta propriedade como nulo ({x: Null}), conforme mostrado neste exemplo:mtlwa:RunDeploymentScript DisplayName="Running Deployment Script" ScriptDetails="[scriptDetails]" ThrowOnError="True" SharedLocationForNetUse="{x:Null}" />

Personalização para acessar outros locais usando a conta de serviço do laboratório

Se o agente de compilação em execução sob a conta de serviço do laboratório precisa ler locais sejam o local de destino de compilação, você pode alterar o valor da propriedade SharedLocationForNetUse do valor padrão [BuildLocation] para o local desejado.Por exemplo, para o agente de compilação em execução sob a conta de serviço do laboratório acessar o diretório \\contoso\scripts, você deve ter:<mtlwa:RunDeploymentScript DisplayName="Running Deployment Script" ScriptDetails="[scriptDetails]" ThrowOnError="True" SharedLocationForNetUse="\\contoso\scripts" />

Consulte também

Tarefas

Criar uma definição de compilação

Referência

Introdução um desenvolvedor ao Windows Workflow Foundation (WF) no.NET 4

Conceitos

Atividades de fluxo de trabalho Lab Management

Usando um ambiente de laboratório para o seu ciclo de vida do aplicativo

Definir o processo de compilação