Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Servicios de Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
Un desencadenante de canalización indica cuándo debe ejecutarse una canalización. Puede configurar un disparador para ejecutar una canalización de forma programada o en respuesta a un evento, como la creación de una pull request. Azure Pipelines admite los siguientes tipos de desencadenadores:
- Los desencadenadores de integración continua (desencadenadores de CI) ejecutan una canalización al insertar código en una rama.
- Los desencadenadores de solicitud de incorporación de cambios (desencadenadores de PR) ejecutan una canalización cuando creas una PR o envías código a la rama de origen de una PR abierta. GitHub repositorios admiten desencadenadores de comentarios que ejecutan una canalización al agregar comentarios en una solicitud de incorporación de cambios abierta.
- Los desencadenadores programados ejecutan una canalización según una programación predefinida.
- Los desencadenadores de finalización de canalización ejecutan una canalización cuando se completa otra canalización.
En este artículo se proporciona información general sobre los desencadenadores de canalización de YAML y los desencadenadores de canalización de compilación clásica . Las canalizaciones de lanzamiento clásicas tienen versiones similares de los desencadenantes descritos en la lista anterior. Para más información, consulte Desencadenadores de canalización de versión clásica.
Desencadenadores de CI
Los desencadenadores de CI ejecutan una canalización cuando se realiza una inserción en una rama que cumple los criterios definidos por el desencadenador. Use la trigger palabra clave para configurar un desencadenador de CI. Por ejemplo, para ejecutar una canalización cuando se realiza una inserción en la main rama, especifique el siguiente desencadenador.
trigger:
- main
Si no configura explícitamente la canalización, todas las ramas tienen desencadenadores de CI habilitados de forma predeterminada, a menos que Deshabilitar desencadenador de CI implícito esté establecido o la configuración de la interfaz de usuario invalide el desencadenador YAML.
Si no configura explícitamente la canalización, todas las ramas tienen desencadenadores de CI habilitados de forma predeterminada, a menos que Deshabilitar desencadenador de CI implícito esté establecido o la configuración de la interfaz de usuario invalide el desencadenador YAML.
Nota:
Deshabilitar el disparador de CI implícito solo está disponible en Azure DevOps Server 2022.2 y versiones posteriores. En Azure DevOps Server 2022 y 2022.1, los desencadenadores de CI se habilitan de forma predeterminada si no están configurados explícitamente.
Para deshabilitar los desencadenadores de CI en la canalización, use la sintaxis siguiente.
trigger: none
Las canalizaciones YAML admiten desencadenadores de CI para los siguientes tipos de repositorio. Para obtener información específica sobre el uso de desencadenadores de CI con un tipo de repositorio específico, consulte los artículos siguientes.
- Desencadenadores de CI en Azure Repos Git
- Desencadenadores de CI en GitHub
- Desencadenadores de CI en GitHub Enterprise Server
- Desencadenadores de CI en Bitbucket Cloud
Para obtener información sobre la sintaxis completa del desencadenador yaML y las opciones disponibles para los desencadenadores de CI, consulte definición de desencadenador.
Importante
Las rutas de Git distinguen entre mayúsculas y minúsculas, incluidos los filtros de ruta de los desencadenadores de CI y PR.
Desencadenadores de PR
Los desencadenadores de solicitudes de extracción (PR) hacen que una canalización se ejecute cada vez que se abre una solicitud de extracción o cuando se envían cambios a la rama de origen de una solicitud de extracción. Use la pr palabra clave para configurar un desencadenador de PR. Por ejemplo, para ejecutar una canalización cuando se crea una PR en la rama main, especifique el siguiente disparador.
pr:
- main
Si no configuras explícitamente desencadenadores de PR en la canalización, se habilitan de forma predeterminada, a menos que la configuración de la interfaz de usuario invalide el desencadenador de YAML. Las pull requests a cualquier rama activan una ejecución de la canalización. Para deshabilitar los desencadenadores de PR de la canalización, use la siguiente sintaxis.
pr: none
Los disparadores de PR de YAML son compatibles con GitHub y Bitbucket Cloud. Para obtener más información sobre el uso de desencadenadores de PR con estos tipos de repositorios, consulte PR triggers in GitHub and PR triggers in Bitbucket Cloud. Para obtener información sobre la sintaxis completa del desencadenador de PR en YAML, consulte definición de PR.
Azure Repos Git usa directivas de rama para implementar desencadenantes de PR. Para obtener más información, consulte PR triggers in Azure Repos Git.
Desencadenadores de comentarios
Los desencadenadores de comentarios configuran una canalización para que se ejecute cuando los colaboradores realizan un comentario de solicitud de incorporación de cambios que contiene un comando de solicitud de incorporación de cambios como /azp run. Los desencadenadores de comentarios solo se admiten para GitHub repositorios. Para obtener más información, consulte desencadenadores de comentarios del repositorio de GitHub.
Desencadenadores programados
Los desencadenadores programados ejecutan una canalización según una programación predefinida. Todos los tipos de repositorio que admiten canalizaciones YAML admiten desencadenadores programados en canalizaciones YAML. Estos tipos de repositorio incluyen Azure Repos Git, GitHub, GitHub Enterprise Server y Bitbucket Cloud.
Para definir un desencadenador programado en YAML, use la palabra clave schedules y defina la programación mediante la sintaxis cron. En el ejemplo siguiente se configura una programación que se ejecuta cada día a medianoche.
# YAML file in the main branch
schedules:
- cron: '0 0 * * *'
displayName: Daily midnight build
branches:
include:
- main
Para obtener más información y ejemplos, vea Desencadenadores programados, definición de programaciones y definición schedules.cron.
Desencadenantes de finalización de la canalización
Los desencadenadores de canalización de las canalizaciones YAML y los desencadenadores de finalización de compilación de las canalizaciones de compilación clásicas permiten desencadenar una canalización tras la finalización de otra.
Configure un activador de recurso de canalización en la canalización para iniciar una ejecución de la canalización cuando la canalización de origen termine una ejecución.
resources:
pipelines:
- pipeline: sourcePipelineResource # Label for this pipeline resource; used when referring to it elsewhere in the pipeline.
source: source-pipeline # The name of the pipeline referenced by this pipeline resource.
project: FabrikamProject # Required only if the source pipeline is in another project
trigger: true # Run this pipeline when any run of source-pipeline completes
Puede agregar varios recursos a su canalización. Puede configurar el desencadenador para que se ejecute cuando finalice cualquier versión de la canalización de origen o limitarlo a determinadas ramas.
Para obtener más información y ejemplos, consulte Desencadenadores de finalización de canalizaciones.
Para obtener la sintaxis completa y las opciones de desencadenador, consulte resources.pipelines.pipeline definition.
Consideraciones sobre ramas para los desencadenadores en las canalizaciones de YAML
Las canalizaciones YAML pueden tener diferentes versiones de la canalización en distintas ramas, lo que puede afectar a la versión de los desencadenadores de la canalización que se evalúan y a la versión de la canalización que se debe ejecutar.
| Tipo de desencadenador | Versión YAML de la canalización |
|---|---|
Desencadenadores de CI (trigger) |
Se usa la versión de la canalización de la rama enviada. |
Desencadenadores de PR (pr) |
Se usa la versión de la canalización en la rama de origen de la solicitud de incorporación. |
| Desencadenadores de comentarios de solicitudes de incorporación de cambios de GitHub | Se usa la versión de la canalización en la rama de origen de la solicitud de extracción. |
| Desencadenadores programados | Consulte Consideraciones de rama para los desencadenadores programados. |
| Desencadenadores de finalización de canalización | Consulte Consideraciones de rama para los desencadenadores de finalización de canalización. |
Canalizaciones clásicas de lanzamiento
Los desencadenadores de implementación continua ayudan a iniciar versiones clásicas después de que se complete una compilación clásica o una canalización YAML.
Los desencadenadores de publicación programados permiten ejecutar una canalización de publicación según una programación definida.
Los desencadenadores de publicación para solicitudes de incorporación de cambios se usan para desplegar una solicitud de incorporación de cambios directamente mediante publicaciones clásicas.
Los desencadenadores de fase en la versión clásica se usan para configurar cómo se desencadena cada fase de una versión clásica.