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
Entre na sua organização do Azure DevOps e vá para o seu projeto.
Vá para Pipelines e selecione Novo pipeline ou Criar pipeline se estiver criando seu primeiro pipeline.
Siga as etapas do assistente selecionando primeiro o GitHub como o local do código-fonte.
Poderá ser redirecionado para o GitHub para iniciar sessão. Em caso afirmativo, insira suas credenciais do GitHub.
Quando vir a lista de repositórios, selecione o repositório.
Você pode ser redirecionado para o GitHub para instalar o aplicativo Azure Pipelines. Em caso afirmativo, selecione Aprovar e instalar.
O Azure Pipelines analisará seu repositório e recomendará o modelo de pipeline do Maven .
Quando seu novo pipeline aparecer, dê uma olhada no YAML para ver o que ele faz. Quando estiver pronto, selecione Salvar e executar.
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!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.
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.
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.
Selecione Execuções para exibir todas as execuções de pipeline. Opcionalmente, você pode filtrar as execuções exibidas.
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.
Ver detalhes do pipeline
A página de detalhes de um pipeline permite que você visualize e gerencie esse 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.
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 .
Escolha um trabalho para ver as etapas desse trabalho.
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.
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.
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.
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.
Para copiar o selo de status para a área de transferência:
No Azure Pipelines, vá para a página Pipelines para exibir a lista de pipelines. Selecione o pipeline criado na seção anterior.
Selecione e, em seguida, selecione Emblema de status.
Selecione Emblema de status.
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:
Vá para a lista de arquivos e selecione
Readme.md
. Selecione ícone de lápis para editar.Cole o selo de status Markdown no início do arquivo.
Confirme a alteração na
main
ramificação.Observe que o selo de status aparece na descrição do repositório.
Para configurar o acesso anônimo a selos para projetos privados:
Navegue até Configurações do projeto no canto inferior esquerdo da página
Abra a guia Configurações em Pipelines
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
Vá para Azure Repos. (O Hub de código na navegação anterior)
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:
Vá para Azure Repos.
Adicione um arquivo.
Na caixa de diálogo, nomeie seu novo arquivo e crie-o.
HelloWorld.ps1
Copie e cole este script.
Write-Host "Hello world"
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".
Selecione Azure Pipelines, ele deve levá-lo automaticamente para a página Compilações .
Criar um novo pipeline.
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:
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.
Comece com um trabalho vazio.
No lado esquerdo, selecione Pipeline e especifique o Nome que deseja usar. Para o pool de agentes, selecione Hosted VS2017.
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.
No lado esquerdo, selecione sua nova tarefa de script do PowerShell .
Para o argumento Caminho do script, selecione o botão para navegar no repositório e selecione o script criado.
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.
Na guia Tarefas, selecione o sinal de adição ( + ) para adicionar uma tarefa ao Trabalho 1.
Selecione a categoria Utilitário , selecione a tarefa Publicar Artefatos de Compilação e selecione Adicionar.
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)
Selecione a guia Triggers .
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.
Selecione Salvar fila & e, em seguida, selecione Salvar fila de desejos.
Na caixa de diálogo, selecione Salvar fila & mais uma vez.
Isso enfileira uma nova compilação no agente hospedado pela Microsoft.
Você verá um link para a nova compilação na parte superior da página.
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.
Vá para o resumo da compilação. Na guia Artefatos da compilação, observe que o script é publicado como um 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.
Edite seu pipeline de compilação.
Na guia Tarefas, selecione a tarefa de script do PowerShell.
Adicione estes argumentos.
Argumentos
-greeter "$(Build.RequestedFor)" -trigger "$(Build.Reason)"
Finalmente, salve o pipeline de construção.
Em seguida, você adicionará os argumentos ao seu script.
Vá para seus Arquivos no Azure Repos (o hub de código na navegação anterior e no TFS).
Selecione o arquivo HelloWorld.ps1 e, em seguida , Editar o arquivo.
Altere o script da seguinte maneira:
Param( [string]$greeter, [string]$trigger ) Write-Host "Hello world" from $greeter Write-Host Trigger: $trigger
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.
Selecione a nova compilação que foi criada e visualize seu log.
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.
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.
Vá para a guia Pipelines e selecione Releases.
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.
Selecione a ação para começar com um trabalho vazio.
Nomeie o QA do estágio.
No painel Artefatos, selecione + Adicionar e especifique uma Origem (pipeline de compilação). Selecione Adicionar.
Selecione o raio para acionar a implantação contínua e, em seguida, habilite o gatilho de implantação contínua à direita.
Selecione a guia Tarefas e selecione seu estágio de controle de qualidade.
Selecione o sinal de adição ( + ) para o trabalho para adicionar uma tarefa ao trabalho.
Na caixa de diálogo Adicionar tarefas, selecione Utilitário, localize a tarefa PowerShell e selecione o botão Adicionar.
No lado esquerdo, selecione sua nova tarefa de script do PowerShell .
Para o argumento Caminho do Script , selecione o botão para procurar seus artefatos e selecione o script que você criou.
Adicione estes argumentos:
-greeter "$(Release.RequestedFor)" -trigger "$(Build.DefinitionName)"
Na guia Pipeline, selecione o estágio de QA e selecione Clone.
Renomeie o estágio clonado Produção.
Renomeie o pipeline de lançamento Olá mundo.
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.
Crie uma nova versão.
Quando Criar nova versão for exibido, selecione Criar.
Abra a versão que você criou.
Visualize os logs para obter dados em tempo real sobre a versão.
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.
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."
Confirme (salve) o script.
Selecione a guia Compilações para ver a compilação enfileirada e executada.
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 .
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ê aprendeu como criar seu primeiro pipeline no Azure. Agora, saiba mais sobre como configurar pipelines no idioma de sua escolha:
Ou, você pode continuar a personalizar o pipeline que você criou.
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 pipelines de teste, eles serão fáceis de excluir quando você terminar com eles.
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.
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.
Idioma | 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?
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:
Clientes
Serviços
- Azure Pipelines
- Provedores de serviços Git, como Azure Repos Git, GitHub e Bitbucket Cloud
- Subversion
Clientes
Serviços
- Azure Pipelines
- Provedores de serviços Git, como GitHub e Bitbucket Cloud
- Subversion
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.
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.
Você pode editar e testar seu rascunho conforme necessário.
Quando estiver pronto, você poderá publicar o rascunho para mesclar as alterações em seu pipeline de compilação.
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.
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:
Especifique o pool no qual a compilação vai.
Adicione e modifique algumas variáveis.
Adicione exigências.
Em um repositório Git
Crie uma ramificação ou uma tag.
Crie uma confirmação.
Em um repositório TFVC
Especifique a versão de origem como um rótulo ou conjunto de alterações.
Execute uma compilação privada de um conjunto de prateleiras. (Você pode usar esta opção em um Agente hospedado pela Microsoft ou um agente auto-hospedado.)
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:
Especifique o pool no qual a compilação vai.
Adicione e modifique algumas variáveis.
Adicione exigências.
Em um repositório Git
Crie uma ramificação ou uma tag.
Crie uma confirmação.
Onde posso saber mais sobre as configurações de pipeline?
Para saber mais sobre as configurações de pipeline, consulte: