Referência de esquema YAML para o Azure Pipelines
A referência de esquema YAML para o Azure Pipelines é uma referência detalhada para pipelines YAML que lista toda a sintaxe YAML com suporte e suas opções disponíveis.
Para criar um pipeline YAML, comece com a definição de pipeline . Para obter mais informações sobre como criar pipelines YAML, consulte Personalizar seu pipeline.
A referência de esquema YAML não abrange tarefas. Para obter mais informações sobre tarefas, consulte o índice de tarefas do Azure Pipelines.
Definições
Pipeline
Um pipeline é um ou mais estágios que descrevem um processo de CI/CD. A definição de pipeline contém a documentação para propriedades de nível raiz, como name
.
Pipeline
Um pipeline é um ou mais trabalhos que descrevem um processo de CI/CD.
Estende
Estende um pipeline usando um modelo.
Empregos
Especifica os trabalhos que compõem o trabalho de um estágio.
Empregos
Especifica os trabalhos que compõem o trabalho de um pipeline.
jobs.deployment
Um trabalho de implantação é um tipo especial de trabalho. É uma coleção de etapas executadas em sequência no ambiente.
jobs.deployment.environment
Nome do ambiente de destino e, opcionalmente, um nome de recurso para registrar o histórico de implantação; format: environment-name.resource-name.
jobs.deployment.strategy
Estratégia de execução para essa implantação.
jobs.deployment.strategy.canary
Estratégia de implantação canário.
jobs.deployment.strategy.rolling
Estratégia de implantação sem interrupção.
jobs.deployment.strategy.runOnce
Estratégia de implantação do RunOnce.
jobs.job
Um trabalho é uma coleção de etapas executadas por um agente ou em um servidor.
jobs.job.container
Nome do recurso de contêiner.
jobs.job.strategy
Estratégia de execução para este trabalho.
jobs.job.uses
Todos os recursos exigidos por esse trabalho que ainda não foram referenciados.
jobs.template
Um conjunto de trabalhos definidos em um modelo.
Parâmetros
Especifica os parâmetros de runtime passados para um pipeline.
parameters.parameter
Parâmetros de modelo de pipeline.
Piscina
Qual pool usar para um trabalho do pipeline.
pool.demands
Demandas (para um pool privado).
Pr
Gatilho de solicitação de pull.
Recursos
Os recursos especificam builds, repositórios, pipelines e outros recursos usados pelo pipeline.
resources.builds
Lista de recursos de build referenciados pelo pipeline.
resources.builds.build
Um recurso de build usado para referenciar artefatos de uma execução.
resources.containers
Lista de imagens de contêiner.
resources.containers.container
Um recurso de contêiner usado para fazer referência a uma imagem de contêiner.
resources.containers.container.trigger
Especifique nenhum para desabilitar, true para disparar em todas as marcas de imagem ou use a sintaxe completa, conforme descrito nos exemplos a seguir.
resources.packages
Lista de recursos do pacote.
resources.packages.package
Um recurso de pacote usado para fazer referência a um pacote NuGet ou npm do GitHub.
resources.pipelines
Lista de recursos de pipeline.
resources.pipelines.pipeline
Um recurso de pipeline.
resources.pipelines.pipeline.trigger
Especifique nenhum para desabilitar, true para incluir todos os branches ou use a sintaxe completa, conforme descrito nos exemplos a seguir.
resources.pipelines.pipeline.trigger.branches
Branches a serem incluídos ou excluídos para disparar uma execução.
resources.repositories
Lista de recursos do repositório.
resources.repositories.repository
Um recurso de repositório é usado para fazer referência a um repositório adicional em seu pipeline.
resources.webhooks
Lista de webhooks.
resources.webhooks.webhook
Um recurso de webhook permite que você integre seu pipeline a um serviço externo para automatizar o fluxo de trabalho.
resources.webhooks.webhook.filters
Lista de filtros de gatilho.
resources.webhooks.webhook.filters.filter
Filtro de gatilho de recurso de webhook.
Horários
A lista de agendamentos especifica os gatilhos agendados para o pipeline.
schedules.cron
Um gatilho agendado especifica um agendamento no qual os branches são criados.
Estágios
Estágios são uma coleção de trabalhos relacionados.
stages.stage
Um estágio é uma coleção de trabalhos relacionados.
stages.template
Você pode definir um conjunto de estágios em um arquivo e usá-lo várias vezes em outros arquivos.
Passos
As etapas são uma sequência linear de operações que compõem um trabalho.
steps.bash
Executa um script no Bash no Windows, macOS e Linux.
steps.checkout
Configure como o pipeline verifica o código-fonte.
steps.download
Baixa artefatos associados à execução atual ou de outro Azure Pipeline associado como um recurso de pipeline.
steps.downloadBuild
Baixa artefatos de build.
steps.getPackage
Baixa um pacote de um feed de gerenciamento de pacotes no Azure Artifacts ou Azure DevOps Server.
steps.powershell
Executa um script usando Windows PowerShell (no Windows) ou pwsh (Linux e macOS).
steps.publish
Publica (carrega) um arquivo ou pasta como um artefato de pipeline que outros trabalhos e pipelines podem consumir.
steps.pwsh
Executa um script no PowerShell Core no Windows, macOS e Linux.
steps.reviewApp
Os downloads criam um recurso dinamicamente em um provedor de fase de implantação.
steps.script
Executa um script usando cmd.exe no Windows e bash em outras plataformas.
steps.task
Executa uma tarefa.
steps.template
Defina um conjunto de etapas em um arquivo e use-o várias vezes em outro arquivo.
Alvo
As tarefas são executadas em um contexto de execução, que é o host do agente ou um contêiner.
target.settableVariables
Restrições sobre quais variáveis podem ser definidas.
Gatilho
Gatilho de integração contínua (push).
Variáveis
Defina variáveis usando pares nome/valor.
variables.group
Variáveis de referência de um grupo de variáveis.
variables.name
Defina variáveis usando nome e sintaxe completa.
variables.template
Definir variáveis em um modelo.
Definições de suporte
Observação
As definições de suporte não se destinam ao uso diretamente em um pipeline. As definições de suporte são usadas apenas como parte de outras definições e são incluídas aqui para referência.
deployHook
Usado para executar etapas que implantam seu aplicativo.
includeExcludeFilters
Listas de itens a serem incluídos ou excluídos.
includeExcludeStringFilters
Itens a serem incluídos ou excluídos.
mountReadOnly
Volumes para montar somente leitura, o padrão é tudo false.
onFailureHook
Usado para executar etapas para ações de reversão ou limpo.up.
onSuccessHook
Usado para executar etapas para ações de reversão ou limpo.up.
onSuccessOrFailureHook
Usado para executar etapas para ações de reversão ou limpo.up.
postRouteTrafficHook
Usado para executar as etapas depois que o tráfego é roteado. Normalmente, essas tarefas monitoram a integridade da versão atualizada para um intervalo definido.
preDeployHook
Usado para executar etapas que inicializam recursos antes do início da implantação do aplicativo.
routeTrafficHook
Usado para executar etapas que servem o tráfego para a versão atualizada.
Espaço
Opções de workspace no agente.
Convenções de documentação do esquema YAML
A referência de esquema YAML é um guia de referência detalhado para pipelines YAML do Azure Pipelines. Ele inclui um catálogo de todos os recursos YAML com suporte e as opções disponíveis.
Aqui estão as convenções de sintaxe usadas na referência de esquema YAML.
- À esquerda de
:
, há uma palavra-chave literal usada em definições de pipeline. - À direita de
:
, há um tipo de dados. O tipo de dados pode ser um tipo primitivo como cadeia de caracteres ou uma referência a uma estrutura avançada definida em outro lugar nessa referência. - O tipo
]
de dados de notação[
indica uma matriz do tipo de definição mencionado. Por exemplo,[ string ]
é uma matriz de cadeias de caracteres. - A notação
{
datatype:
datatype}
indica um mapeamento de um tipo de dados para outro. Por exemplo,{ string: string }
é um mapeamento de cadeias de caracteres para cadeias de caracteres. - O símbolo
|
indica que há vários tipos de dados disponíveis para a palavra-chave. Por exemplo,job | template
significa que uma definição de trabalho ou uma referência de modelo é permitida.
Confira também
Essa referência aborda o esquema de um arquivo YAML do Azure Pipelines.
Para saber mais sobre os conceitos básicos do YAML, confira Aprender YAML em Y Minutos.
O Azure Pipelines não dá suporte a todos os recursos do YAML.
Os recursos sem suporte incluem âncoras, chaves complexas e conjuntos.
Além disso, ao contrário do YAML padrão, o Azure Pipelines depende de ver stage
, job
, task
ou um atalho de tarefa, como script
, como a primeira chave em um mapeamento.