Referencia de esquema YAML para Azure Pipelines

La referencia de esquema YAML para Azure Pipelines es una referencia detallada para las canalizaciones YAML que enumera toda la sintaxis YAML admitida y sus opciones disponibles.

Para crear una canalización YAML, comience con la definición de la canalización . Para más información sobre cómo compilar canalizaciones de YAML, consulte Personalización de la canalización.

La referencia de esquema YAML no cubre las tareas. Para más información sobre las tareas, consulte el índice de tareas de Azure Pipelines.

Definiciones

Tubería
Una canalización es una o varias fases que describen un proceso de CI/CD. La definición de canalización contiene la documentación de las propiedades de nivel raíz, como name.

Tubería
Una canalización es uno o varios trabajos que describen un proceso de CI/CD.

Extiende
Extiende una canalización mediante una plantilla.

Trabajos
Especifica los trabajos que componen el trabajo de una fase.

Trabajos
Especifica los trabajos que componen el trabajo de una canalización.

jobs.deployment
Un trabajo de implementación es un tipo especial de trabajo. Es una colección de pasos que se ejecutan secuencialmente en el entorno.

jobs.deployment.environment
Nombre del entorno de destino y, opcionalmente, un nombre de recurso para registrar el historial de implementación; format: environment-name.resource-name.

jobs.deployment.strategy
Estrategia de ejecución para esta implementación.

jobs.deployment.strategy.canary
Estrategia de implementación controlada.

jobs.deployment.strategy.rolling
Estrategia de implementación gradual.

jobs.deployment.strategy.runOnce
Estrategia de implementación de RunOnce.

jobs.job
Un trabajo es una colección de pasos ejecutados por un agente o en un servidor.

jobs.job.container
Nombre del recurso de contenedor.

jobs.job.strategy
Estrategia de ejecución para este trabajo.

jobs.job.uses
Todos los recursos requeridos por este trabajo que aún no se han hecho referencia.

jobs.template
Un conjunto de trabajos definidos en una plantilla.

Parámetros
Especifica los parámetros en tiempo de ejecución pasados a una canalización.

parameters.parameter
Parámetros de plantilla de canalización.

Piscina
Grupo que se va a usar para un trabajo de la canalización.

pool.demand
Demandas (para un grupo privado).

Pr
Desencadenador de solicitud de incorporación de cambios.

Recursos
Los recursos especifican compilaciones, repositorios, canalizaciones y otros recursos usados por la canalización.

resources.builds
Lista de recursos de compilación a los que hace referencia la canalización.

resources.builds.build
Un recurso de compilación que se usa para hacer referencia a artefactos desde una ejecución.

resources.containers
Lista de imágenes de contenedor.

resources.containers.container
Un recurso de contenedor usado para hacer referencia a una imagen de contenedor.

resources.containers.container.trigger
Especifique ninguno para deshabilitar, true para desencadenar en todas las etiquetas de imagen o use la sintaxis completa, como se describe en los ejemplos siguientes.

resources.packages
Lista de recursos de paquete.

resources.packages.package
Un recurso de paquete que se usa para hacer referencia a un paquete de GitHub de NuGet o npm.

resources.pipelines
Lista de recursos de canalización.

resources.pipelines.pipeline
Un recurso de canalización.

resources.pipelines.pipeline.trigger
Especifique ninguno para deshabilitar, true para incluir todas las ramas o usar la sintaxis completa, como se describe en los ejemplos siguientes.

resources.pipelines.pipeline.trigger.branches
Ramas que se van a incluir o excluir para desencadenar una ejecución.

resources.repositories
Lista de recursos del repositorio.

resources.repository.repository
Se usa un recurso de repositorio para hacer referencia a un repositorio adicional en la canalización.

resources.webhooks
Lista de webhooks.

resources.webhooks.webhooks.webhook
Un recurso de webhook le permite integrar la canalización con un servicio externo para automatizar el flujo de trabajo.

resources.webhooks.webhook.filters
Lista de filtros de desencadenador.

resources.webhooks.webhook.filters.filter
Filtro de desencadenador de recursos de webhook.

Horarios
La lista de programaciones especifica los desencadenadores programados para la canalización.

schedules.cron
Un desencadenador programado especifica una programación en la que se compilan las ramas.

Etapas
Las fases son una colección de trabajos relacionados.

stages.stage
Una fase es una colección de trabajos relacionados.

stages.template
Puede definir un conjunto de fases en un archivo y usarlo varias veces en otros archivos.

Pasos
Los pasos son una secuencia lineal de operaciones que componen un trabajo.

steps.bash
Ejecuta un script en Bash en Windows, macOS y Linux.

steps.checkout
Configure cómo la canalización desvía el código fuente.

steps.download
Descarga artefactos asociados a la ejecución actual o desde otra canalización de Azure Que está asociada como un recurso de canalización.

steps.downloadBuild
Descarga artefactos de compilación.

steps.getPackage
Descarga un paquete de una fuente de administración de paquetes en Azure Artifacts o Azure DevOps Server.

steps.powershell
Ejecuta un script mediante Windows PowerShell (en Windows) o pwsh (Linux y macOS).

steps.publish
Publica (carga) un archivo o carpeta como un artefacto de canalización que pueden consumir otros trabajos y canalizaciones.

steps.pwsh
Ejecuta un script en PowerShell Core en Windows, macOS y Linux.

steps.reviewApp
Las descargas crean un recurso dinámicamente en un proveedor de fase de implementación.

steps.script
Ejecuta un script mediante cmd.exe en Windows y Bash en otras plataformas.

steps.task
Ejecuta una tarea.

steps.template
Defina un conjunto de pasos en un archivo y úselo varias veces en otro archivo.

Objetivo
Las tareas se ejecutan en un contexto de ejecución, que es el host del agente o un contenedor.

target.settableVariables
Restricciones sobre las variables que se pueden establecer.

detonante
Desencadenador de integración continua (inserción).

Variables
Defina variables mediante pares nombre-valor.

variables.group
Variables de referencia de un grupo de variables.

variables.name
Defina variables mediante el nombre y la sintaxis completa.

variables.template
Defina variables en una plantilla.

Definiciones auxiliares

Nota

Las definiciones auxiliares no están diseñadas para su uso directamente en una canalización. Las definiciones auxiliares solo se usan como parte de otras definiciones y se incluyen aquí como referencia.

deployHook
Se usa para ejecutar los pasos que implementan la aplicación.

includeExcludeFilters
Listas de elementos que se van a incluir o excluir.

includeExcludeStringFilters
Elementos que se van a incluir o excluir.

mountReadOnly
Los volúmenes para montar solo lectura, el valor predeterminado es todo false.

onFailureHook
Se usa para ejecutar pasos para acciones de reversión o limpieza.

onSuccessHook
Se usa para ejecutar pasos para acciones de reversión o limpieza.

onSuccessOrFailureHook
Se usa para ejecutar pasos para acciones de reversión o limpieza.

postRouteTrafficHook
Se usa para ejecutar los pasos después de enrutar el tráfico. Normalmente, estas tareas supervisan el estado de la versión actualizada durante un intervalo definido.

preDeployHook
Se usa para ejecutar pasos que inicializan los recursos antes de que se inicie la implementación de la aplicación.

routeTrafficHook
Se usa para ejecutar pasos que atienden el tráfico a la versión actualizada.

Trabajo
Opciones del área de trabajo en el agente.

Convenciones de documentación del esquema YAML

La referencia del esquema YAML es una guía de referencia detallada de las canalizaciones YAML de Azure Pipelines. Incluye un catálogo de todas las funcionalidades de YAML admitidas y las opciones disponibles.

Estas son las convenciones de sintaxis que se usan en la referencia del esquema YAML.

  • A la izquierda de : hay una palabra clave literal que se usa en las definiciones de la canalización.
  • A la derecha de : hay un tipo de datos. El tipo de datos puede ser un tipo primitivo como una cadena o una referencia a una estructura enriquecida definida en otra parte de esta referencia.
  • El tipo] de datos de notación [ indica una matriz del tipo de definición mencionado. Por ejemplo, [ string ] es una matriz de cadenas.
  • La notación {datatype:datatype} indica una asignación de un tipo de datos a otro. Por ejemplo, { string: string } es una asignación de cadenas a cadenas.
  • El símbolo | indica que hay varios tipos de datos disponibles para la palabra clave. Por ejemplo, job | template significa que se permite una definición de trabajo o una referencia de plantilla.

Consulte también

Esta referencia trata el esquema de un archivo YAML de Azure Pipelines. Para obtener información sobre los conceptos básicos de YAML, consulte Aprenda sobre YAML en Y minutos. Azure Pipelines no admite todas las características de YAML. Entre las características que no se admiten se incluyen delimitadores, claves complejas y conjuntos. Además, a diferencia de YAML estándar, Azure Pipelines depende de ver stage, job, task, o un acceso directo de tareas como script como la primera clave de una asignación.