Partilhar via


Principais conceitos do Azure Pipelines

Serviços de DevOps do Azure

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

Visão geral dos conceitos-chave

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

Diagrama que mostra os conceitos-chave de um pipeline.

Dave Jarvis contribuiu para este gráfico.

  • Um gatilho manual, programado ou automatizado inicia um pipeline.
  • Um pipeline pode conter um ou mais estágios e implantar em um ou mais ambientes.
  • Estágios são uma forma de organizar pipelines, e cada um contém uma ou mais tarefas.
  • Os trabalhos são executados em agentes ou podem ser sem agente.
  • 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 compilação.
  • Uma execução de pipeline gera 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 computacional com software de agente instalado que executa uma tarefa de pipeline de cada 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 suportadas por trabalhos sem agente.

Aprovações e controlos

As 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 tem verificações e aprovações configuradas, as execuções do pipeline são pausadas até que todas as verificações e aprovações sejam completadas com êxito.

Artefatos

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 dos Artifacts do Azure, a parte do Azure DevOps que permite armazenar, gerir e partilhar pacotes com um único feed.

Entrega contínua

A entrega contínua (CD) é um processo para criar, testar e implantar código em um ou mais ambientes de teste e produção. A implantação e o teste em vários estágios ajudam a impulsionar a qualidade, detetando erros com antecedência e frequência.

Os canais automatizados de distribuição de CD podem utilizar artefatos de canais de integração contínua (CI) para distribuir novas versões e correções. O monitoramento e os alertas constantes fornecem visibilidade do processo de CD.

Integração contínua

A integração contínua (CI) é um processo que executa testes automatizados e se baseia em um cronograma, sempre que o código é enviado por push, ou ambos. O CI simplifica o teste e a criação de código e ajuda a detetar problemas no início do ciclo de desenvolvimento, quando eles são mais fáceis e rápidos de corrigir. As pipelines de CI produzem artefactos que as 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 distribuição executa as tarefas da fase de distribuição, que podem incluir a execução de testes automatizados, a distribuição de artefatos de build e outras ações especificadas.

Grupos de implantação

Nos pipelines de lançamento do Azure Pipelines Classic, um grupo de implantação é um grupo lógico de máquinas-alvo 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 Disponibilizar 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 onde você implanta seu aplicativo. Os pipelines podem ser implantados em um ou mais ambientes depois de concluir uma compilação e executar testes.

Tarefas

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

Os trabalhos são úteis para executar uma série de etapas em diferentes ambientes. Por exemplo, seu estágio de compilação pode conter um trabalho para criar uma x86 configuração e outro trabalho para criar uma x64 configuração.

Cada tarefa é tratada por um agente que executa todas as etapas do trabalho. Um número limitado de passos de tarefas suporta trabalhos que são executados sem agente. Para obter mais informações, consulte Tarefas suportadas por 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 você pode passar para um pipeline YAML ou disponibilizar em vários pipelines.

Tubulações

Um pipeline do Azure Pipelines define um fluxo de trabalho para tarefas de compilação, teste e implantação, desde a execução de um arquivo em lotes até a automação do processo de CI/CD para um aplicativo. Um pipeline consiste em um ou mais estágios com tarefas e etapas.

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

Lançamentos

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

Nos pipelines YAML, os estágios de compilação e liberação são todos incluídos na definição de pipeline de vários estágios.

Corridas

Uma execução representa uma execução de um pipeline. Durante uma execução, o Azure Pipelines processa primeiro o pipeline e, em seguida, envia a execução para um ou mais agentes para que estes realizem as tarefas. A execução recolhe os logs das etapas realizadas e os resultados dos testes realizados. Para obter mais informações, consulte Execuções de pipeline.

Scripts

Um script executa linha de comando, PowerShell ou código 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 específico para seu pipeline.

Estágios

Um estágio é um limite lógico em um pipeline que pode marcar a separação de preocupações, por exemplo, construir, testar e produzir. Cada etapa 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 em que um estágio é executado.

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á ligado a um trabalho específico ou a um conjunto de trabalhos. Você pode colocar esses trabalhos em estágios separados para aprovação.
  • O gasoduto tem trabalhos que precisam ser executados por muito tempo. Você pode colocar esses trabalhos nas suas próprias etapas.

Passos

Uma etapa é o menor bloco de construção de um gasoduto. 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 da tarefa Azure Pipelines. Para obter informações sobre como criar tarefas personalizadas, consulte Como adicionar uma extensão de tarefa personalizada de pipelines.

Acionadores

Um gatilho é um evento que faz com que um pipeline seja executado. Você pode acionar um pipeline manualmente ou para executar em um cronograma definido. Você também pode acionar um pipeline para ser executado automaticamente após um push para um repositório, após a conclusão de outra compilação ou sob outras condições. Para obter mais informações, consulte Especificar eventos que acionam pipelines e gatilhos de lançamento clássico.