Referência de esquema YAML para Pipelines do Azure
A referência de esquema YAML para Pipelines do Azure é uma referência detalhada para pipelines YAML que lista toda a sintaxe YAML suportada e as opções disponíveis.
Para criar um pipeline YAML, comece com a definição do pipeline . Para obter mais informações sobre a criação de pipelines YAML, veja Personalizar o pipeline.
A referência de esquema YAML não abrange tarefas. Para obter mais informações sobre tarefas, veja o índice de tarefas dos Pipelines do Azure.
Definições
pipeline
Um pipeline é uma ou mais fases que descrevem um processo ci/CD. A definição do pipeline contém a documentação para propriedades de nível de raiz, como name
.
pipeline
Um pipeline é uma ou mais tarefas que descrevem um processo de CI/CD.
expande
Expande um pipeline com um modelo.
tarefas
Especifica as tarefas que constituem o trabalho de uma fase.
tarefas
Especifica as tarefas que constituem o trabalho de um pipeline.
jobs.deployment
Uma tarefa de implementação é um tipo especial de tarefa. É uma coleção de passos a executar sequencialmente no ambiente.
jobs.deployment.environment
Nome do ambiente de destino e, opcionalmente, um nome de recurso para registar o histórico de implementações; format: environment-name.resource-name.
jobs.deployment.strategy
Estratégia de execução para esta implementação.
jobs.deployment.strategy.canary
Estratégia de Implementação Canary.
jobs.deployment.strategy.rolling
Estratégia de Implementação Sem Interrupção.
jobs.deployment.strategy.runOnce
Estratégia de Implementação runOnce.
jobs.job
Uma tarefa é uma coleção de passos executados por um agente ou num servidor.
jobs.job.container
Nome do recurso de contentor.
jobs.job.strategy
Estratégia de execução para esta tarefa.
jobs.job.uses
Todos os recursos necessários para esta tarefa que ainda não estão referenciados.
jobs.template
Um conjunto de tarefas definidas num modelo.
parâmetros
Especifica os parâmetros de runtime transmitidos para um pipeline.
parameters.parameter
Parâmetros do modelo de pipeline.
conjunto
Que conjunto utilizar para uma tarefa do pipeline.
pool.demands
Exigências (para um conjunto privado).
pr
Acionador de pedido Pull.
recursos
Os recursos especificam compilações, repositórios, pipelines e outros recursos utilizados pelo pipeline.
resources.builds
Lista de recursos de compilação referenciados pelo pipeline.
resources.builds.build
Um recurso de compilação utilizado para referenciar artefactos de uma execução.
resources.containers
Lista de imagens de contentor.
resources.containers.container
Um recurso de contentor utilizado para referenciar uma imagem de contentor.
resources.containers.container.trigger
Especifique nenhuma para desativar, verdadeiro para acionar em todas as etiquetas de imagem ou utilize a sintaxe completa, conforme descrito nos exemplos seguintes.
resources.packages
Lista de recursos do pacote.
resources.packages.package
Um recurso de pacote utilizado para referenciar um pacote Do GitHub nuGet ou npm.
resources.pipelines
Lista de recursos de pipeline.
resources.pipelines.pipeline
Um recurso de pipeline.
resources.pipelines.pipeline.trigger
Especifique nenhum para desativar, verdadeiro para incluir todos os ramos ou utilize a sintaxe completa, conforme descrito nos exemplos seguintes.
resources.pipelines.pipeline.trigger.branches
Ramos a incluir ou excluir para acionar uma execução.
resources.repositories
Lista de recursos do repositório.
resources.repositories.repository
Um recurso de repositório é utilizado para referenciar um repositório adicional no pipeline.
resources.webhooks
Lista de webhooks.
resources.webhooks.webhook
Um recurso de webhook permite-lhe integrar o pipeline num serviço externo para automatizar o fluxo de trabalho.
resources.webhooks.webhook.filters
Lista de filtros de acionador.
resources.webhooks.webhook.filters.filter
Filtro do acionador de recursos do Webhook.
agendas
A lista de agendamentos especifica os acionadores agendados para o pipeline.
schedules.cron
Um acionador agendado especifica uma agenda em que ramos são criados.
fases
As fases são uma coleção de tarefas relacionadas.
stages.stage
Uma fase é uma coleção de tarefas relacionadas.
stages.template
Pode definir um conjunto de fases num ficheiro e utilizá-lo várias vezes noutros ficheiros.
passos
Os passos são uma sequência linear de operações que compõem uma tarefa.
steps.bash
Executa um script no Bash no Windows, macOS e Linux.
steps.checkout
Configure a forma como o pipeline dá saída do código fonte.
steps.download
Transfere artefactos associados à execução atual ou a partir de outro Pipeline do Azure associado como um recurso de pipeline.
steps.downloadBuild
Transfere artefactos de compilação.
steps.getPackage
Transfere um pacote a partir de um feed de gestão de pacotes nos Artefactos do Azure ou Azure DevOps Server.
steps.powershell
Executa um script com Windows PowerShell (no Windows) ou pwsh (Linux e macOS).
steps.publish
Publica (carrega) um ficheiro ou pasta como um artefacto de pipeline que outras tarefas e pipelines podem consumir.
steps.pwsh
Executa um script no PowerShell Core no Windows, macOS e Linux.
steps.reviewApp
As transferências criam um recurso dinamicamente num fornecedor de fase de implementação.
steps.script
Executa um script com cmd.exe no Windows e No Bash noutras plataformas.
steps.task
Executa uma tarefa.
steps.template
Defina um conjunto de passos num ficheiro e utilize-o várias vezes noutro ficheiro.
destino
As tarefas são executadas num contexto de execução, que é o anfitrião do agente ou um contentor.
target.settableVariables
Restrições sobre as variáveis que podem ser definidas.
acionador
Acionador de integração contínua (push).
variáveis
Defina variáveis com pares nome/valor.
variables.group
Referenciar variáveis de um grupo de variáveis.
variables.name
Defina variáveis com o nome e a sintaxe completa.
variables.template
Definir variáveis num modelo.
Definições de suporte
Nota
As definições de suporte não se destinam a ser utilizadas diretamente num pipeline. As definições de suporte são utilizadas apenas como parte de outras definições e são incluídas aqui para referência.
deployHook
Utilizado para executar passos que implementam a sua aplicação.
includeExcludeFilters
Listas de itens a incluir ou excluir.
includeExcludeStringFilters
Itens a incluir ou excluir.
mountReadOnly
Volumes para montar só de leitura, a predefinição é tudo falso.
onFailureHook
Utilizado para executar passos para ações de reversão ou limpeza.
onSuccessHook
Utilizado para executar passos para ações de reversão ou limpeza.
onSuccessOrFailureHook
Utilizado para executar passos para ações de reversão ou limpeza.
postRouteTrafficHook
Utilizado para executar os passos após o encaminhamento do tráfego. Normalmente, estas tarefas monitorizam o estado de funcionamento da versão atualizada para um intervalo definido.
preDeployHook
Utilizado para executar passos que inicializam recursos antes do início da implementação da aplicação.
routeTrafficHook
Utilizado para executar passos que servem o tráfego para a versão atualizada.
área de trabalho
Opções de área de trabalho no agente.
Convenções de documentação do esquema YAML
A referência de esquema YAML é um guia de referência detalhada para pipelines YAML dos Pipelines do Azure. Inclui um catálogo de todas as capacidades YAML suportadas e as opções disponíveis.
Eis as convenções de sintaxe utilizadas na referência de esquema YAML.
- À esquerda de
:
está uma palavra-chave literal utilizada nas definições do pipeline. - À direita de é um tipo de
:
dados. O tipo de dados pode ser um tipo primitivo, como uma cadeia ou uma referência a uma estrutura avançada definida noutro local nesta 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. - O tipo de dados
:
}
de notação{
indica um mapeamento de um tipo de dados para outro. Por exemplo,{ string: string }
é um mapeamento de cadeias para cadeias. - O símbolo
|
indica que existem vários tipos de dados disponíveis para a palavra-chave. Por exemplo,job | template
significa que é permitida uma definição de tarefa ou uma referência de modelo.
Ver também
Esta referência abrange o esquema de um ficheiro YAML dos Pipelines do Azure.
Para saber as noções básicas do YAML, veja Learn YAML in Y Minutes (Aprender YAML em Y Minutes).
O Azure Pipelines não suporta todas as funcionalidades YAML.
As funcionalidades não suportadas incluem âncoras, teclas 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 script
de tarefa como a primeira chave num mapeamento.