Grupos de tarefas para builds e versões (clássico)

Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server | 2019 TFS 2018

Observação

Em Microsoft Team Foundation Server (TFS) 2018 e versões anteriores, pipelines de build e lançamento são chamados de definições, execuções são chamadas de builds, conexões de serviço são chamadas de pontos de extremidade de serviço, estágios são chamados de ambientes e trabalhos são chamados de fases.

Observação

Não há suporte para grupos de tarefas em pipelines YAML. Em vez disso, nesse caso, você pode usar modelos. Consulte a referência de esquema YAML.

Um grupo de tarefas permite encapsular uma sequência de tarefas, já definidas em um build ou pipeline de lançamento, em uma única tarefa reutilizável que pode ser adicionada a um pipeline de build ou lançamento, assim como qualquer outra tarefa. Você pode optar por extrair os parâmetros das tarefas encapsuladas como variáveis de configuração e abstrair o restante das informações da tarefa.

O novo grupo de tarefas é adicionado automaticamente ao catálogo de tarefas, pronto para ser adicionado a outros pipelines de versão e build. Os grupos de tarefas são armazenados no nível do projeto e não podem ser acessados fora do escopo do projeto.

Os grupos de tarefas são uma forma de padronizar e gerenciar de modo centralizado as etapas de implantação de todos os aplicativos. Quando você inclui um grupo de tarefas em suas definições e faz uma alteração centralmente no grupo de tarefas, a alteração é refletida automaticamente em todas as definições que usam o grupo de tarefas. Não é necessário alterar cada uma individualmente.

Antes de criar um grupo de tarefas...

  • Verifique se todas as tarefas que você deseja incluir em um grupo de tarefas têm seus parâmetros definidos como variáveis, como $(MyVariable), em que você deseja ser capaz de configurar esses parâmetros ao usar o grupo de tarefas. As variáveis usadas nas tarefas são extraídas e convertidas automaticamente em parâmetros para o grupo de tarefas. Os valores dessas variáveis de configuração serão convertidos em valores padrão para o grupo de tarefas.

  • Se você especificar um valor (em vez de uma variável) para um parâmetro, esse valor se tornará um valor de parâmetro fixo e não poderá ser exposto como um parâmetro para o grupo de tarefas.

  • Os parâmetros das tarefas encapsuladas para as quais você especificou um valor (em vez de uma variável) ou não forneceu um valor, não são configuráveis no grupo de tarefas quando adicionados a um pipeline de build ou lançamento.

  • As condições da tarefa (como "Executar esta tarefa somente quando uma tarefa anterior falhou" para uma tarefa de Script do PowerShell ) podem ser configuradas em um grupo de tarefas e essas configurações são mantidas com o grupo de tarefas.

  • Ao salvar o grupo de tarefas, você pode fornecer um nome e uma descrição para o novo grupo de tarefas e selecionar uma categoria na qual deseja que ele apareça na caixa de diálogo catálogo de tarefas. Você também pode alterar os valores padrão para cada um dos parâmetros.

  • Quando você enfileira um build ou uma versão, as tarefas encapsuladas são extraídas e os valores inseridos para os parâmetros do grupo de tarefas são aplicados às tarefas.

  • As alterações feitas em um grupo de tarefas são refletidas em todas as instâncias do grupo de tarefas.

Criar um grupo de tarefas

  1. Verifique se todas as tarefas que você pretende incluir não contêm parâmetros vinculados. A maneira fácil de fazer isso é escolher Desvincular tudo no painel de configurações para todo o processo.

    Unlinking parameters for all tasks

  2. Selecione uma sequência de tarefas em um pipeline de build ou lançamento, abra o menu de atalho e escolha Criar grupo de tarefas.

    Creating a task group from a release pipeline list of tasks

  3. Especifique um nome e uma descrição para o novo grupo de tarefas e a categoria (guia no painel Adicionar tarefas) ao qual você deseja adicioná-lo.

  4. Depois de escolher Criar, o novo grupo de tarefas será criado e substituirá as tarefas selecionadas no pipeline.

  5. Todas as '$(vars)' das tarefas subjacentes, excluindo as variáveis predefinidas, serão exibidas como parâmetros obrigatórios para o grupo de tarefas recém-criado.

    Por exemplo, digamos que você tenha uma entrada de tarefa $(foobar), que você não pretende parametrizar. No entanto, quando você cria um grupo de tarefas, a entrada da tarefa é convertida no parâmetro 'foobar' do grupo de tarefas. Agora, você pode fornecer o valor padrão para o parâmetro do grupo de tarefas 'foobar' como $(foobar). Isso garante que, em runtime, a tarefa expandida obtenha a mesma entrada à qual se destina.

  6. Salve o pipeline atualizado.

Gerenciar grupos de tarefas

Todos os grupos de tarefas criados no projeto atual estão listados na página Grupos de Tarefas do Azure Pipelines.

Listing task groups

Use o comando Exportar atalho para salvar uma cópia do grupo de tarefas como um pipeline JSON e o ícone Importar para importar definições de grupo de tarefas salvas anteriormente. Use esse recurso para transferir grupos de tarefas entre projetos e empresas ou replicar e salvar cópias de seus grupos de tarefas.

Selecione um nome de grupo de tarefas para abrir a página de detalhes.

Managing a task group

  • Na página Tarefas , você pode editar as tarefas que compõem o grupo de tarefas. Para cada tarefa encapsulada, você pode alterar os valores de parâmetro para os parâmetros não variáveis, editar as variáveis de parâmetro existentes ou converter valores de parâmetro de e para variáveis. Quando você salvar as alterações, todas as definições que usam esse grupo de tarefas coletarão as alterações.

Todos os parâmetros de variável do grupo de tarefas serão exibidos como parâmetros obrigatórios na definição do pipeline. Você também pode definir o valor padrão para os parâmetros do grupo de tarefas.

  • Na guia Histórico , você pode ver o histórico de alterações no grupo.

  • Na guia Referências , você pode expandir listas de todos os pipelines de build e lançamento e outros grupos de tarefas que usam (referência) esse grupo de tarefas. Isso é útil para garantir que as alterações não tenham efeitos inesperados em outros processos.

Criar visualizações e versões atualizadas de grupos de tarefas

Todas as tarefas internas em Azure Pipelines e TFS são executadas em versão. Isso permite que pipelines de build e lançamento continuem a usar a versão existente de uma tarefa enquanto novas versões são desenvolvidas, testadas e lançadas. Em Azure Pipelines, você pode ver seus próprios grupos de tarefas personalizados para que eles se comportem da mesma maneira e forneçam as mesmas vantagens.

  1. Depois de concluir a edição de um grupo de tarefas, escolha Salvar como rascunho em vez de Salvar.

    Saving a draft update to a task group

  2. O teste de cadeia de caracteres é acrescentado ao número de versão do grupo de tarefas. Quando estiver satisfeito com as alterações, escolha Publicar rascunho. Você pode escolher se deseja publicá-lo como uma versão prévia ou como uma versão pronta para produção.

    Publishing a draft version of a task group

  3. Agora você pode usar o grupo de tarefas atualizado em seus processos de build e versão; alterando o número de versão do grupo de tarefas em um pipeline existente ou adicionando-o do painel Adicionar tarefas .

    Using a preview version of a task group

    Assim como acontece com as tarefas internas, o padrão quando você adiciona um grupo de tarefas é a versão mais alta não prévia.

  4. Depois de terminar de testar o grupo de tarefas atualizado, escolha Publicar versão prévia. A cadeia de caracteres Preview é removida da cadeia de caracteres de número de versão. Agora, ele aparecerá em definições como uma versão "pronta para produção".

    Publishing a preview version of a task group

  5. Em um pipeline de build ou lançamento que já contém esse grupo de tarefas, agora você pode selecionar a nova versão "pronta para produção". Quando você adiciona o grupo de tarefas do painel Adicionar tarefas , ele seleciona automaticamente a nova versão "pronta para produção".

    Using an updated version of a task group

Trabalhando com versões do grupo de tarefas

Qualquer atualização do grupo de tarefas pode ser uma atualização de versão secundária ou principal.

Versão secundária

Ação: Você salva diretamente o grupo de tarefas após a edição em vez de salvá-lo como rascunho.

Efeito: O número da versão não é alterado. Digamos que você tenha um grupo de tarefas de versão 1.0. Você pode ter qualquer número de atualizações de versão secundária, ou seja 1.1, 1.2etc 1.3 . No pipeline, a versão do grupo de tarefas é mostrada como 1.* As alterações mais recentes aparecerão na definição de pipeline automaticamente.

Razão: Essa deve ser uma pequena alteração no grupo de tarefas e você espera que os pipelines usem essa nova alteração sem editar a versão na definição do pipeline.

Versão principal

Ação: Salve o grupo de tarefas como rascunho e, em seguida, crie uma visualização, valide o grupo de tarefas e, em seguida, publique a versão prévia como uma versão principal.

Efeito: O grupo de tarefas aumenta para uma nova versão. Digamos que você tenha um grupo de tarefas de versão 1.*. Uma nova versão é publicada como 2.*, 3.*etc 4.* . E uma notificação sobre a disponibilidade da nova versão aparece em todas as definições de pipeline em que esse grupo de tarefas é usado. O usuário precisa atualizar explicitamente para a nova versão do grupo de tarefas em pipelines.

Razão: Quando você tiver uma alteração substancial que possa interromper os pipelines existentes, você deseja testá-lo e implementá-lo como uma nova versão. Os usuários podem optar por atualizar para a nova versão ou optar por permanecer na mesma versão. Essa funcionalidade é igual a uma atualização normal da versão da tarefa.

No entanto, se a atualização do grupo de tarefas não for uma alteração significativa, mas você quiser validar primeiro e, em seguida, impor pipelines para consumir as alterações mais recentes, você poderá seguir as etapas abaixo.

  1. Atualize o grupo de tarefas com as alterações desejadas e salve-o como um rascunho. Será criado um novo grupo de tarefas de rascunho '<Taskgroupname-Draft>' que contém as alterações feitas. E esse grupo de tarefas de rascunho está acessível para você consumir em seus pipelines.
  2. Agora, em vez de publicar como versão prévia, você pode consumir diretamente esse grupo de tarefas de rascunho em seu pipeline de teste.
  3. Valide esse novo grupo de tarefas de rascunho em seu pipeline de teste e, quando estiver confiante, volte para o grupo de tarefas principal e faça as mesmas alterações e salve-o diretamente. Isso será feito como uma atualização de versão secundária.
  4. As novas alterações agora aparecerão em todos os pipelines em que esse grupo de tarefas é usado.
  5. Agora você pode excluir seu grupo de tarefas de rascunho.

Ajuda e suporte