Create your first pipeline (Criar o primeiro pipeline)

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Este é um guia passo a passo para usar o Azure Pipelines para criar um aplicativo de exemplo a partir de um repositório Git. Este guia usa pipelines YAML configurados com o editor de pipeline YAML. Se você quiser usar pipelines clássicos, consulte Definir seu pipeline clássico. Para obter orientação sobre como usar o TFVC, consulte Criar repositórios TFVC.

Pré-requisitos - Azure DevOps

Certifique-se de que tem os itens seguintes:

  • Uma conta do GitHub onde você pode criar um repositório. Crie um gratuitamente.

  • Uma organização Azure DevOps. Crie um gratuitamente. Se sua equipe já tiver um, verifique se você é um administrador do projeto de DevOps do Azure que deseja usar.

  • Capacidade de executar pipelines em agentes hospedados pela Microsoft. Para usar agentes hospedados pela Microsoft, sua organização do Azure DevOps deve ter acesso a trabalhos paralelos hospedados pela Microsoft. Você pode comprar um trabalho paralelo ou solicitar uma bolsa gratuita.

Create your first pipeline (Criar o primeiro pipeline)

Obter o código de exemplo Java

Para começar, bifurque o repositório a seguir em sua conta do GitHub.

https://github.com/MicrosoftDocs/pipelines-java

Crie seu primeiro pipeline Java

  1. Entre na sua organização do Azure DevOps e vá para o seu projeto.

  2. Vá para Pipelines e selecione Novo pipeline ou Criar pipeline se estiver criando seu primeiro pipeline.

  3. Siga as etapas do assistente selecionando primeiro o GitHub como o local do código-fonte.

  4. Poderá ser redirecionado para o GitHub para iniciar sessão. Em caso afirmativo, insira suas credenciais do GitHub.

  5. Quando vir a lista de repositórios, selecione o repositório.

  6. Você pode ser redirecionado para o GitHub para instalar o aplicativo Azure Pipelines. Em caso afirmativo, selecione Aprovar e instalar.

  1. O Azure Pipelines analisará seu repositório e recomendará o modelo de pipeline do Maven .

  2. Quando seu novo pipeline aparecer, dê uma olhada no YAML para ver o que ele faz. Quando estiver pronto, selecione Salvar e executar.

  3. Você será solicitado a confirmar um novo azure-pipelines.yml arquivo no repositório. Depois de ficar satisfeito com a mensagem, selecione Salvar e executar novamente.

    Se você quiser ver seu pipeline em ação, selecione o trabalho de compilação.

    Você acabou de criar e executar um pipeline que criamos automaticamente para você, porque seu código parecia ser uma boa combinação para o modelo Maven .

    Agora você tem um pipeline YAML funcional (azure-pipelines.yml) em seu repositório que está pronto para você personalizar!

  4. Quando estiver pronto para fazer alterações no pipeline, selecione-o na página Pipelines e edite o azure-pipelines.yml arquivo.

Saiba mais sobre como trabalhar com Java em seu pipeline.

Visualize e gerencie seus pipelines

Você pode visualizar e gerenciar seus pipelines escolhendo Pipelines no menu à esquerda para ir para a página inicial de pipelines.

Captura de tela da página inicial de pipelines.

Na página inicial de pipelines, você pode visualizar pipelines e execuções de pipeline, criar e importar pipelines, gerenciar a segurança e detalhar os detalhes do pipeline e da execução.

Escolha Recente para exibir pipelines executados recentemente (o modo de exibição padrão) ou escolha Todos para exibir todos os pipelines.

Captura de tela das opções para visualizar execuções de pipeline na página inicial de pipelines.

Selecione um pipeline para gerenciar esse pipeline e exibir as execuções. Selecione o número de compilação para a última execução para exibir os resultados dessa compilação, selecione o nome da ramificação para exibir a ramificação para essa execução ou selecione o menu de contexto para executar o pipeline e executar outras ações de gerenciamento.

Captura de tela de pipelines executados recentemente.

Selecione Execuções para exibir todas as execuções de pipeline. Opcionalmente, você pode filtrar as execuções exibidas.

Captura de tela de execuções de pipeline.

Selecione uma execução de pipeline para exibir informações sobre essa execução.

Você pode optar por Manter ou Excluir uma execução no menu de contexto. Para obter mais informações sobre retenção de execução, consulte Políticas de retenção de compilação e lançamento.

Captura de tela do menu de contexto de execução do pipeline.

Ver detalhes do pipeline

A página de detalhes de um pipeline permite que você visualize e gerencie esse pipeline.

Captura de tela da página de detalhes do pipeline.

Escolha Editar para editar seu pipeline. Para obter mais informações, consulte Editor de pipeline YAML. Você também pode editar seu pipeline modificando o arquivo azure-pipelines.yml diretamente no repositório que hospeda o pipeline.

Ver detalhes da execução do pipeline

No resumo da execução do pipeline, você pode visualizar o status da sua execução, tanto enquanto ela está em execução quanto quando está concluída.

Captura de tela do resumo da execução do pipeline.

No painel de resumo, você pode exibir detalhes do trabalho e do estágio, baixar artefatos e navegar até confirmações vinculadas, resultados de teste e itens de trabalho.

Trabalhos e estágios

O painel de trabalhos exibe uma visão geral do status de seus estágios e trabalhos. Esse painel pode ter várias guias, dependendo se seu pipeline tem estágios e trabalhos ou apenas trabalhos. Neste exemplo, o pipeline tem dois estágios chamados Build e Deploy. Você pode detalhar as etapas do pipeline escolhendo o trabalho no painel Estágios ou Trabalhos .

Captura de tela de trabalhos e estágios de pipeline.

Escolha um trabalho para ver as etapas desse trabalho.

Captura de tela de tarefas de pipeline.

Na visualização de etapas, você pode revisar o status e os detalhes de cada etapa. Em Mais ações, você pode alternar carimbos de data/hora ou exibir um log bruto de todas as etapas no pipeline.

Captura de tela do menu de conteúdo de tarefas de pipeline.

Cancelar e executar novamente um pipeline

Se o pipeline estiver em execução, você poderá cancelá-lo escolhendo Cancelar. Se a execução tiver sido concluída, você poderá executar novamente o pipeline escolhendo Executar novo.

Captura de tela do cancelamento de uma execução de pipeline.

Pipeline executar mais ações menu

No menu Mais ações , você pode baixar logs, adicionar tags, editar o pipeline, excluir a execução e configurar a retenção para a execução.

Captura de tela do pipeline executar página de resumo mais ações menu.

Nota

Se for uma execução retida, não a poderá eliminar. Se não vir Eliminar, selecione Parar a retenção da execução e, em seguida, elimine a execução. Se vir Eliminar e Ver versões de retenção, significa que uma ou mais das políticas de retenção configuradas ainda são aplicáveis à execução. Selecione Ver versões de retenção, elimine as políticas (apenas as políticas da execução selecionada são removidas) e, em seguida, elimine a execução.

Adicionar um selo de status ao repositório

Muitos desenvolvedores gostam de mostrar que estão mantendo a qualidade do código alta exibindo um selo de status no repositório.

O selo de status mostra o pipeline do Azure bem-sucedido

Para copiar o selo de status para a área de transferência:

  1. No Azure Pipelines, vá para a página Pipelines para exibir a lista de pipelines. Selecione o pipeline criado na seção anterior.

  2. Selecione e, em seguida, selecione Emblema de status.

  3. Selecione Emblema de status.

  4. Copie o Markdown de exemplo da seção Sample markdown.

Agora, com o selo Markdown na área de transferência, siga as seguintes etapas no GitHub:

  1. Vá para a lista de arquivos e selecione Readme.md. Selecione ícone de lápis para editar.

  2. Cole o selo de status Markdown no início do arquivo.

  3. Confirme a alteração na main ramificação.

  4. Observe que o selo de status aparece na descrição do repositório.

Para configurar o acesso anônimo a selos para projetos privados:

  1. Navegue até Configurações do projeto no canto inferior esquerdo da página

  2. Abra a guia Configurações em Pipelines

  3. Alterne o controle deslizante Desabilitar acesso anônimo a selos em Geral

Nota

Mesmo em um projeto privado, o acesso a selos anônimos é habilitado por padrão. Com o acesso a selo anônimo habilitado, os usuários fora da sua organização podem consultar informações como nomes de projetos, nomes de filiais, nomes de trabalhos e status de compilação por meio da API de status de selo.

Como você acabou de alterar o arquivo neste repositório, o Readme.md Azure Pipelines cria automaticamente seu código, de acordo com a azure-pipelines.yml configuração no arquivo na raiz do repositório. De volta ao Azure Pipelines, observe que uma nova execução aparece. Cada vez que você faz uma edição, o Azure Pipelines inicia uma nova execução.

Mostraremos como usar o editor clássico no Azure DevOps Server 2019 para criar uma compilação e uma versão que imprime "Hello world".

Pré-requisitos

  • Um agente do Windows auto-hospedado.

Inicializar o repositório

Se você já tiver um repositório em seu projeto, poderá pular para a próxima etapa: Pular para adicionar um script ao seu repositório

  1. Vá para Azure Repos. (O Hub de código na navegação anterior)

    Arquivos de repositório

  2. Se o seu projeto estiver vazio, você será recebido com uma tela para ajudá-lo a adicionar código ao seu repositório. Escolha a opção inferior para inicializar seu repositório com um readme arquivo:

    Inicializar repositório

Adicionar um script ao repositório

Crie um script do PowerShell que imprima Hello worldo .

  1. Vá para Azure Repos.

  2. Adicione um arquivo.

    Na guia Arquivos, no nó do repositório, selecione a opção Novo arquivo

  3. Na caixa de diálogo, nomeie seu novo arquivo e crie-o.

    HelloWorld.ps1
    
  4. Copie e cole este script.

    Write-Host "Hello world"
    
  5. Confirme (salve) o arquivo.

Neste tutorial, nosso foco está em CI/CD, então estamos mantendo a parte de código simples. Estamos trabalhando em um repositório Git do Azure Repos diretamente em seu navegador da Web.

Quando estiver pronto para começar a criar e implantar um aplicativo real, você poderá usar uma ampla gama de clientes e serviços de controle de versão com compilações de CI do Azure Pipelines. Mais informações.

Criar um pipeline de compilação

Crie um pipeline de compilação que imprima "Hello world".

  1. Selecione Azure Pipelines, ele deve levá-lo automaticamente para a página Compilações .

    Vá para a guia Compilações

  2. Criar um novo pipeline.

    Selecione o botão da guia construir

    Para novos usuários do Azure DevOps, isso levará você automaticamente para a experiência de criação do pipeline YAML. Para chegar ao editor clássico e concluir este guia, você deve desativar o recurso de visualização para a experiência de criação de pipeline Novo YAML:

    Clique em configurações no canto superior direito da tela e clique em recursos de visualização

    Clique em alternar para desativar o recurso de visualização do yaml

  3. Verifique se o código-fonte, o projeto, o repositório e a ramificação padrão correspondem ao local no qual você criou o script.

  4. Comece com um trabalho vazio.

  5. No lado esquerdo, selecione Pipeline e especifique o Nome que deseja usar. Para o pool de agentes, selecione Hosted VS2017.

  6. No lado esquerdo, selecione o sinal de adição ( + ) para adicionar uma tarefa ao Trabalho 1. No lado direito, selecione a categoria Utilitário , selecione a tarefa PowerShell na lista e escolha Adicionar.

    Adicionar a tarefa de compilação ao trabalho

  7. No lado esquerdo, selecione sua nova tarefa de script do PowerShell .

  8. Para o argumento Caminho do script, selecione o botão para navegar no repositório e selecione o script criado.

    Selecione seu script

  9. Selecione Salvar fila & e, em seguida, selecione Salvar.

Um pipeline de compilação é a entidade através da qual você define seu pipeline de compilação automatizado. No pipeline de compilação, você compõe um conjunto de tarefas, cada uma das quais executa uma etapa em sua compilação. O catálogo de tarefas fornece um rico conjunto de tarefas para você começar. Você também pode adicionar PowerShell ou shell scripts ao seu pipeline de compilação.

Publicar um artefato de sua compilação

Uma compilação típica produz um artefato que pode ser implantado em vários estágios em uma versão. Aqui para demonstrar a capacidade de uma maneira simples, vamos simplesmente publicar o script como o artefato.

  1. Na guia Tarefas, selecione o sinal de adição ( + ) para adicionar uma tarefa ao Trabalho 1.

  2. Selecione a categoria Utilitário , selecione a tarefa Publicar Artefatos de Compilação e selecione Adicionar.

    Adicionar a tarefa de publicar artefato

    Caminho para publicação: Selecione o botão para navegar e selecione o script que você criou.

    Nome do artefato: Digite drop.

    Local de publicação do artefato: selecione Azure Artifacts/TFS.

Artefatos são os arquivos que você deseja que sua compilação produza. Os artefatos podem ser praticamente tudo o que sua equipe precisa para testar ou implantar seu aplicativo. Por exemplo, você tem um .DLL e .EXE arquivos executáveis e arquivos . Arquivo de símbolos PDB de um aplicativo C# ou C++ .NET do Windows.

Para permitir que você produza artefatos, fornecemos ferramentas como cópia com correspondência de padrões e um diretório de preparo no qual você pode reunir seus artefatos antes de publicá-los. Consulte Artefatos no Azure Pipelines.

Permitir a integração contínua (CI)

  1. Selecione a guia Triggers .

  2. Habilite a integração contínua.

Um gatilho de integração contínua em um pipeline de compilação indica que o sistema deve enfileirar automaticamente uma nova compilação sempre que uma alteração de código for confirmada. Você pode tornar o gatilho mais geral ou mais específico, e também agendar sua compilação (por exemplo, em uma base noturna). Consulte Acionadores de compilação.

Salve e enfileire a compilação

Salve e enfileire uma compilação manualmente e teste seu pipeline de compilação.

  1. Selecione Salvar fila & e, em seguida, selecione Salvar fila de desejos.

  2. Na caixa de diálogo, selecione Salvar fila & mais uma vez.

    Isso enfileira uma nova compilação no agente hospedado pela Microsoft.

  3. Você verá um link para a nova compilação na parte superior da página.

    Construir console

    Escolha o link para assistir à nova compilação enquanto ela acontece. Depois que o agente estiver alocado, você começará a ver os logs dinâmicos da compilação. Observe que o script do PowerShell é executado como parte da compilação e que "Hello world" é impresso no console.

    Assista no console de compilação

  4. Vá para o resumo da compilação. Na guia Artefatos da compilação, observe que o script é publicado como um artefato.

    Abra o console de compilação para ver o artefato

Adicione algumas variáveis e confirme uma alteração no seu script

Vamos passar algumas variáveis de construção para o script para tornar nosso pipeline um pouco mais interessante. Em seguida, confirmaremos uma alteração em um script e veremos o pipeline de CI ser executado automaticamente para validar a alteração.

  1. Edite seu pipeline de compilação.

  2. Na guia Tarefas, selecione a tarefa de script do PowerShell.

  3. Adicione estes argumentos.

Abra a tarefa PowerShell no console de compilação

Argumentos

-greeter "$(Build.RequestedFor)" -trigger "$(Build.Reason)"

Finalmente, salve o pipeline de construção.

Em seguida, você adicionará os argumentos ao seu script.

  1. Vá para seus Arquivos no Azure Repos (o hub de código na navegação anterior e no TFS).

  2. Selecione o arquivo HelloWorld.ps1 e, em seguida , Editar o arquivo.

  3. Altere o script da seguinte maneira:

    Param(
    [string]$greeter,
    [string]$trigger
    )
    Write-Host "Hello world" from $greeter
    Write-Host Trigger: $trigger
    
  4. Confirme (salve) o script.

Agora você pode ver os resultados de suas alterações. Vá para Pipelines do Azure e selecione Enfileirado. Observe na seção Em fila ou em execução que uma compilação é acionada automaticamente pela alteração confirmada.

  1. Selecione a nova compilação que foi criada e visualize seu log.

  2. Observe que a pessoa que alterou o código tem seu nome impresso na mensagem de saudação. Você também vê impresso que esta era uma compilação de CI.

Criar um log de script resumido do PowerShell

Acabamos de introduzir o conceito de variáveis de construção nessas etapas. Imprimimos o valor de uma variável que é automaticamente predefinida e inicializada pelo sistema. Você também pode definir variáveis personalizadas e usá-las em argumentos para suas tarefas ou como variáveis de ambiente dentro de seus scripts. Para saber mais sobre variáveis, consulte Compilar variáveis.

Você tem um pipeline de construção. O que se segue?

Você criou um pipeline de compilação que cria e valida automaticamente qualquer código verificado pela sua equipe. Neste ponto, você pode continuar para a próxima seção para saber mais sobre pipelines de liberação. Ou, se preferir, você pode pular para criar um pipeline de compilação para seu aplicativo.

Criar um pipeline de versão

Defina o processo para executar o script em dois estágios.

  1. Vá para a guia Pipelines e selecione Releases.

  2. Selecione a ação para criar um novo pipeline. Se um pipeline de liberação já estiver criado, selecione o sinal de adição ( + ) e, em seguida, selecione Criar um pipeline de liberação.

  3. Selecione a ação para começar com um trabalho vazio.

  4. Nomeie o QA do estágio.

  5. No painel Artefatos, selecione + Adicionar e especifique uma Origem (pipeline de compilação). Selecione Adicionar.

  6. Selecione o raio para acionar a implantação contínua e, em seguida, habilite o gatilho de implantação contínua à direita.

    Selecione o raio para acionar a implantação contínua

  7. Selecione a guia Tarefas e selecione seu estágio de controle de qualidade.

  8. Selecione o sinal de adição ( + ) para o trabalho para adicionar uma tarefa ao trabalho.

  9. Na caixa de diálogo Adicionar tarefas, selecione Utilitário, localize a tarefa PowerShell e selecione o botão Adicionar.

  10. No lado esquerdo, selecione sua nova tarefa de script do PowerShell .

  11. Para o argumento Caminho do Script , selecione o botão para procurar seus artefatos e selecione o script que você criou.

  12. Adicione estes argumentos:

    -greeter "$(Release.RequestedFor)" -trigger "$(Build.DefinitionName)"
    
  13. Na guia Pipeline, selecione o estágio de QA e selecione Clone.

    Clone o ambiente de liberação no QA

  14. Renomeie o estágio clonado Produção.

  15. Renomeie o pipeline de lançamento Olá mundo.

    Renomeie o pipeline de lançamento hello world

  16. Salve o pipeline de liberação.

Um pipeline de liberação é uma coleção de estágios nos quais os artefatos de compilação do aplicativo são implantados. Ele também define o pipeline de implantação real para cada estágio, bem como como os artefatos são promovidos de um estágio para outro.

Além disso, observe que usamos algumas variáveis em nossos argumentos de script. Nesse caso, usamos variáveis de liberação em vez das variáveis de compilação que usamos para o pipeline de compilação.

Implantar uma versão

Execute o script em cada etapa.

  1. Crie uma nova versão.

    Criar versão - DevOps 2019 e 2020

    Quando Criar nova versão for exibido, selecione Criar.

  2. Abra a versão que você criou.

    lançamento criado - DevOps 2019 e 2020

  3. Visualize os logs para obter dados em tempo real sobre a versão.

    logs de lançamento - DevOps 2019 e 2020

Você pode acompanhar o progresso de cada versão para ver se ela foi implantada em todos os estágios. Você pode controlar as confirmações que fazem parte de cada versão, os itens de trabalho associados e os resultados de quaisquer execuções de teste adicionadas ao pipeline de versão.

Altere seu código e assista-o ser implantado automaticamente na produção

Faremos mais uma alteração no roteiro. Desta vez, ele será automaticamente construído e, em seguida, será implantado até o estágio de produção.

  1. Vá para o hub de código , guia Arquivos , edite o arquivo HelloWorld.ps1 e altere-o da seguinte maneira:

    Param(
    [string]$greeter,
    [string]$trigger
    )
    Write-Host "Hello world" from $greeter
    Write-Host Trigger: $trigger
    Write-Host "Now that you've got CI/CD, you can automatically deploy your app every time your team checks in code."
    
  2. Confirme (salve) o script.

  3. Selecione a guia Compilações para ver a compilação enfileirada e executada.

  4. Depois que a compilação for concluída, selecione a guia Versões , abra a nova versão e vá para os Logs.

Seu novo código é implantado automaticamente no estágio de controle de qualidade e, em seguida, no estágio de produção .

log final da etapa do script de lançamento - DevOps 2019 e 2020

Em muitos casos, você provavelmente gostaria de editar o pipeline de liberação para que a implantação de produção aconteça somente depois que alguns testes e aprovações estiverem em vigor. Consulte Visão geral de aprovações e portões.

Próximos passos

Você acabou de aprender como criar seu primeiro pipeline no Azure. Saiba mais sobre como configurar pipelines no idioma de sua escolha:

Ou, você pode continuar a personalizar o pipeline que acabou de criar.

Para executar seu pipeline em um contêiner, consulte Trabalhos de contêiner.

Para obter detalhes sobre como criar repositórios do GitHub, consulte Criar repositórios do GitHub.

Para saber como publicar seus artefatos de pipeline, consulte Publicar artefatos de pipeline.

Para descobrir o que mais você pode fazer em pipelines YAML, consulte Referência de esquema YAML.

Limpeza

Se você criou qualquer pipeline de teste, eles são fáceis de excluir quando você terminar de usá-los.

Para excluir um pipeline, navegue até a página de resumo desse pipeline e escolha Excluir no menu ... no canto superior direito da página. Digite o nome do pipeline a ser confirmado e escolha Excluir.

Excluir pipeline

Você aprendeu o básico da criação e execução de um pipeline. Agora você está pronto para configurar seu pipeline de compilação para a linguagem de programação que está usando. Vá em frente e crie um novo pipeline de compilação e, desta vez, use um dos seguintes modelos.

Linguagem Modelo a utilizar
.NET ASP.NET
.NET Core ASP.NET Core
C++ .NET Desktop
Ir Ir
Java Gradle
JavaScript Node.js
XCode XCode

FAQ

Onde posso ler artigos sobre DevOps e CI/CD?

O que é a Integração Contínua?

O que é Entrega Contínua?

What is DevOps? (O que é o DevOps?)

Que sistema de controlo de versão posso utilizar?

Quando estiver pronto para começar a usar o CI/CD para seu aplicativo, você pode usar o sistema de controle de versão de sua escolha:

Como faço para replicar um pipeline?

Se o pipeline tiver um padrão que você deseja replicar em outros pipelines, clone-o, exporte-o ou salve-o como um modelo.

all-definitions-build-action-menu-replicate-actions

Depois de clonar um pipeline, você pode fazer alterações e salvá-lo.

Depois de exportar um pipeline, você pode importá-lo da guia Todos os pipelines .

Depois de criar um modelo, os membros da equipe podem usá-lo para seguir o padrão em novos pipelines.

Gorjeta

Se você estiver usando o New Build Editor, seus modelos personalizados serão mostrados na parte inferior da lista.

Como posso trabalhar com rascunhos?

Se você estiver editando um pipeline de compilação e quiser testar algumas alterações que ainda não estão prontas para produção, poderá salvá-lo como rascunho.

Guardar como rascunho

Você pode editar e testar seu rascunho conforme necessário.

editar rascunho - DevOps 2019 e 2020

Quando estiver pronto, você poderá publicar o rascunho para mesclar as alterações em seu pipeline de compilação.

publicar rascunho - DevOps 2019 e 2020

Ou, se você decidir descartar o rascunho, poderá excluí-lo da guia Todo o pipeline mostrada acima.

Como posso excluir um pipeline?

Para excluir um pipeline, navegue até a página de resumo desse pipeline e escolha Excluir no menu ... no canto superior direito da página. Digite o nome do pipeline a ser confirmado e escolha Excluir.

O que mais posso fazer quando enfileirar uma compilação?

Você pode enfileirar compilações automaticamente ou manualmente.

Quando você enfileira manualmente uma compilação, você pode, para uma única execução da compilação:

Você pode enfileirar compilações automaticamente ou manualmente.

Quando você enfileira manualmente uma compilação, você pode, para uma única execução da compilação:

Onde posso saber mais sobre as configurações de pipeline?

Para saber mais sobre as configurações de pipeline, consulte:

Como faço para criar programaticamente um pipeline de compilação?

Referência da API REST: Criar um pipeline de compilação

Nota

Você também pode gerenciar compilações e criar pipelines a partir da linha de comando ou scripts usando a CLI do Azure Pipelines.