Compartilhar via


Principais conceitos do Azure Pipelines

Serviços do Azure DevOps

Este artigo apresenta os principais conceitos e componentes que compõem o Azure Pipelines. Entender os termos e partes básicos de um pipeline pode ajudá-lo a criar, testar e implantar seu código com mais eficiência.

Visão geral dos principais conceitos

O gráfico a seguir mostra os principais componentes e ações de um pipeline.

Diagrama que mostra os principais conceitos de um pipeline.

Dave Jarvis contribuiu para este gráfico.

  • Um gatilho manual, agendado ou automatizado faz com que um pipeline inicie.
  • Um pipeline pode conter um ou mais estágios e efetuar a implantação em um ou mais ambientes.
  • Estágios são uma maneira de organizar pipelines, e cada um contém uma ou mais tarefas.
  • Trabalhos são executados em agentes ou podem ser executados sem agentes.
  • Cada trabalho contém uma ou mais etapas.
  • Uma etapa é o menor elemento de um pipeline e pode ser uma tarefa ou um script.
  • Uma tarefa é um script pré-empacotado que executa uma ação, como invocar uma API REST ou publicar um artefato de build.
  • Uma execução de um pipeline produz artefatos como arquivos ou pacotes.

Termos do Azure Pipelines

Os termos a seguir definem os principais componentes e processos do Azure Pipelines.

Agentes

Um agente é uma infraestrutura de computação com um software de agente instalado que executa uma tarefa de pipeline por vez. Por exemplo, um trabalho pode ser executado em um agente do Ubuntu hospedado pela Microsoft. Para obter mais informações sobre diferentes tipos de agentes e como usá-los, consulte agentes do Azure Pipelines.

Um número limitado de etapas de tarefa pode ser executado sem usar um agente. Para obter mais informações, consulte tarefas compatíveis com trabalhos sem agente.

Aprovações e verificações

Aprovações e verificações definem um conjunto de validações necessárias antes da execução de um pipeline ou estágio. A aprovação manual é uma verificação comum para controlar implantações em ambientes de produção. Se um ambiente tiver verificações e aprovações configuradas, o pipeline será executado em pausa até que todas as verificações e aprovações sejam concluídas com êxito.

Artifacts

Artefatos são coleções de arquivos ou pacotes publicados por uma execução e disponibilizados para tarefas de pipeline subsequentes, como distribuição ou implantação. Os artefatos no Azure Pipelines são diferentes do Azure Artifacts, a parte do Azure DevOps que permite armazenar, gerenciar e compartilhar pacotes com um único feed.

Entrega contínua

A CD (entrega contínua) é um processo de criação, teste e implantação de código em um ou mais ambientes de teste e produção. Implantar e testar em vários estágios ajuda a impulsionar a qualidade capturando erros cedo e com frequência.

Os pipelines automatizados de versão de CD podem consumir artefatos de pipelines de CI (integração contínua) para lançar novas versões e correções. O monitoramento e os alertas constantes fornecem visibilidade no processo de CD.

Integração contínua

Integração Contínua (CI) é um processo que executa testes automatizados e compilações de forma agendada, quando o código é integrado, ou quando ambas as condições são atendidas. A CI simplifica o teste e a criação de código e ajuda a detectar problemas no início do ciclo de desenvolvimento quando eles são mais fáceis e rápidos de corrigir. Os pipelines de CI produzem artefatos que os pipelines de CD podem usar para implantações automáticas.

Implantação

Para pipelines YAML, um trabalho de implantação é uma coleção de etapas que são executadas sequencialmente em um ambiente. Os trabalhos de implantação podem usar estratégias como runOnce, rolling e canary. Para obter mais informações, consulte Trabalhos de implantação.

Em pipelines clássicos, a implantação executa as tarefas para o estágio de implantação, que podem incluir testes automatizados, a implantação de artefatos de compilação e outras ações determinadas.

Grupos de implantação

Nos pipelines de lançamento clássicos do Azure Pipelines, um grupo de implantação é um grupo lógico de computadores de destino de implantação. Cada servidor de destino no grupo de implantação requer um agente de implantação instalado. Para obter mais informações, consulte Provisionar agentes para grupos de implantação.

Ambientes

Um ambiente é uma coleção de recursos, como máquinas virtuais, contêineres, aplicativos Web ou serviços em que você implanta seu aplicativo. Os pipelines podem ser implantados em um ou mais ambientes após concluir uma compilação e executar testes.

Trabalhos

Um trabalho representa um limite de execução de um conjunto de etapas que são executadas sequencialmente no mesmo agente. Estágios de pipeline podem incluir uma ou mais tarefas. Os trabalhos nem sempre são executados sequencialmente em estágios por padrão.

Tarefas são úteis para executar uma série de passos em diferentes ambientes. Por exemplo, a etapa de build pode conter um trabalho para construção de uma x86 configuração e outro trabalho para construção de uma x64 configuração.

Cada tarefa corre em um agente que realiza todas as etapas dessa tarefa. Um número limitado de etapas de tarefas dá suporte a trabalhos autônomos, executados sem agente. Para obter mais informações, consulte tarefas compatíveis com trabalhos sem agente.

Biblioteca

A Biblioteca de Pipelines do Azure inclui arquivos seguros e grupos de variáveis. Arquivos seguros são uma maneira de armazenar arquivos e compartilhá-los entre pipelines. Os grupos de variáveis armazenam valores e segredos que podem ser passados para um pipeline yaml ou disponibilizados em vários pipelines.

Pipelines

Um pipeline do Azure Pipelines define um fluxo de trabalho para tarefas de build, teste e implantação, desde a execução de um arquivo em lote até a automatização do processo de CI/CD para um aplicativo. Um pipeline consiste em um ou mais estágios que contêm tarefas e etapas.

Você pode definir pipelines usando editoresclássicos ou baseados em YAML. Para obter mais informações, consulte pipelines YAML vs Classic.

Lançamentos

Um release é um conjunto versionado de artefatos especificado em um pipeline Clássico. A versão inclui um instantâneo de todas as informações necessárias para executar o pipeline de liberação, como estágios, tarefas, gatilhos, políticas de aprovação e opções de implantação. Você pode criar uma versão manualmente, com um gatilho de implantação ou com a API REST.

Em pipelines YAML, os estágios de build e lançamento são todos incluídos na definição de pipeline de vários estágios.

Execuções

Um build representa uma execução de um pipeline. Durante uma execução, o Azure Pipelines primeiro processa o pipeline e envia a execução para um ou mais agentes para executar os trabalhos. A execução coleta os logs das etapas executadas e dos resultados obtidos de testes executados. Para mais informações, consulte Execuções de pipeline.

Scripts

Um script executa o código de linha de comando, PowerShell ou Bash como uma etapa em seu pipeline. Você pode escrever scripts multiplataforma para macOS, Linux e Windows. Ao contrário de uma tarefa pré-empacotada, um script é um código personalizado que é específico para o pipeline.

Estágios

Um estágio é um limite lógico em um pipeline que pode marcar a separação de responsabilidades, como, por exemplo, construção, teste e produção. Cada estágio contém um ou mais trabalhos. Vários estágios em um pipeline são executados um após o outro por padrão. Você pode especificar outras condições para quando uma etapa é executada.

Definir estágios em um pipeline é útil quando:

  • Grupos separados gerenciam diferentes partes do pipeline. Por exemplo, se diferentes gerentes gerenciam trabalhos de teste e implantação, faz sentido ter estágios de teste e produção separados.
  • Um conjunto de aprovações está conectado a um trabalho ou conjunto específico de trabalhos. Você pode colocar esses trabalhos em estágios separados para aprovação.
  • O pipeline tem tarefas que precisam ser executadas por um longo período. Você pode colocar esses trabalhos em seus próprios estágios.

Etapas

Uma etapa é o menor bloco de construção de um pipeline. Por padrão, as etapas são executadas uma após a outra em um trabalho. Uma etapa pode ser um script ou uma tarefa.

Tarefas

Uma tarefa é um script ou procedimento pré-empacotado abstraído com um conjunto de entradas para definir a automação em um pipeline. Para tarefas disponíveis, consulte a referência de tarefa do Azure Pipelines. Para obter informações sobre como criar tarefas personalizadas, consulte Adicionar uma extensão de tarefa de pipelines personalizados.

Gatilhos

Um gatilho é um evento que ocasiona a execução de um pipeline. Você pode disparar um pipeline manualmente ou executá-lo de maneira programada. Você também pode acionar um pipeline para ser executado automaticamente em um push para um repositório, após a conclusão de outra compilação ou em outras condições. Para obter mais informações, consulte Especificar eventos que disparam pipelines e gatilhos de liberação clássica.