Use Azure Pipelines
Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2015
Azure Pipelines admite la integración continua (CI) y la entrega continua (CD) para probar, compilar e implementar continuamente el código. Para ello, defina una canalización.
La manera más reciente de compilar canalizaciones es con el editor de canalizaciones de YAML. También puede usar canalizaciones clásicas con el editor clásico.
Azure Pipelines admite la integración continua (CI) y la entrega continua (CD) para probar, compilar e implementar continuamente el código. Para ello, defina una canalización mediante la interfaz de usuario, también denominada clásica.
Nota
En Microsoft Team Foundation Server (TFS) 2018 y versiones anteriores, las canalizaciones de compilación y versión se denominan definiciones, las ejecuciones se denominan compilaciones, las conexiones de servicio se denominan puntos de conexión de servicio, las fases se denominan entornos y los trabajos se denominan fases.
Automatización de pruebas, compilaciones y entrega
La integración continua (CI) automatiza las pruebas y compilaciones del proyecto. Ci ayuda a detectar errores o problemas al principio del ciclo de desarrollo, cuando son más fáciles y rápidos de corregir. Los elementos conocidos como artefactos se generan a partir de sistemas de CI. Las canalizaciones de versión de entrega continua las usan para impulsar las implementaciones automáticas.
La entrega continua implementa y prueba automáticamente el código en varias fases para ayudar a impulsar la calidad. Los sistemas de integración continua generan artefactos implementables, que incluyen infraestructura y aplicaciones. Las canalizaciones de versión automatizadas consumen estos artefactos para publicar nuevas versiones y correcciones en el destino que prefiera.
| Integración continua (CI) | Entrega continua (CD) |
|---|---|
| - Aumento de la cobertura de código - Compilación más rápida mediante la división de pruebas y ejecuciones de compilación - Asegúrese automáticamente de que no envía código roto. - Ejecutar pruebas continuamente |
- Implementación automática de código en producción - Asegúrese de que los destinos de implementación tienen el código más reciente - Uso de código probado desde el proceso de CI |
Definición de canalizaciones mediante la sintaxis YAML
La canalización se define en un archivo YAML denominado azure-pipelines.yml con el resto de la aplicación.

- Las canalizaciones tienen la misma versión del código, y siguen la misma estructura de ramificación. La validación de los cambios se obtiene a través de revisiones de código en solicitudes de extracción y directivas de compilación de rama.
- Cada rama que use puede modificar la canalización modificando el
azure-pipelines.ymlarchivo . Obtenga más información sobre la consideración de rama para las canalizaciones de YAML. - Un cambio en el proceso de compilación podría provocar una interrupción o provocar un resultado inesperado. Dado que el cambio está en control de versiones con el resto del código base, puede identificar más fácilmente el problema.
Siga estos pasos básicos:
- Configurar Azure Pipelines para usar nuestro repositorio de Git
- Edite
azure-pipelines.ymlel archivo para definir la compilación. - Insertar el código en el repositorio de control de versiones (esta acción inicia el desencadenador predeterminado para compilar e implementar y, después, supervisar los resultados)
Nuestro código ya está actualizado, compilado, probado y empaquetado. Se puede implementar en cualquier destino.
Las canalizaciones de YAML no están disponibles en TFS 2018 y versiones anteriores.
Definición de canalizaciones mediante la interfaz clásica
Cree y configure canalizaciones en Azure DevOps web con el editor de la interfaz de usuario clásica. Una canalización de compilación se define para compilar y probar código y, tras ello, publicar artefactos. También se define una canalización de versión para consumir e implementar esos artefactos en destinos de implementación.

Siga estos pasos básicos:
- Configurar Azure Pipelines para usar nuestro repositorio de Git
- Use el editor Azure Pipelines clásico para crear y configurar las canalizaciones de compilación y versión.
- Insertar el código en el repositorio de control de versiones Esta acción desencadena la canalización y ejecuta tareas como compilar o probar código.
La compilación crea un artefacto que usa el resto de la canalización para ejecutar tareas como la implementación en ensayo o producción.
Nuestro código ya está actualizado, compilado, probado y empaquetado. Se puede implementar en cualquier destino.
Disponibilidad de características
Ciertas características de canalización solo están disponibles cuando se usa YAML o al definir canalizaciones de compilación o versión con la interfaz clásica. En la tabla siguiente se indica qué características se admiten y para qué tareas y métodos.
| Característica | YAML | Compilación clásica | Versión clásica | Notas |
|---|---|---|---|---|
| Agentes | Sí | Sí | Sí | Especifica un recurso necesario en el que se ejecuta la canalización. |
| Aprobaciones | Sí | No | Sí | Define un conjunto de validaciones necesarias antes de completar una fase de implementación. |
| Artefactos | Sí | Sí | Sí | Admite la publicación o el consumo de diferentes tipos de paquetes. |
| Almacenamiento en caché | Sí | Sí | No | Reduce el tiempo de compilación al permitir que las salidas o dependencias descargadas de una ejecución se reutilicen en ejecuciones posteriores. En versión preliminar, solo está disponible Azure Pipelines versión preliminar. |
| Condiciones | Sí | Sí | Sí | Especifica las condiciones que se deben cumplir antes de ejecutar un trabajo. |
| Trabajos de contenedor | Sí | No | No | Especifica los trabajos que se ejecutarán en un contenedor. |
| Demandas | Sí | Sí | Sí | Garantiza que se cumplen los requisitos de canalización antes de ejecutar una fase de canalización. Requiere agentes auto-hospedados. |
| Dependencias | Sí | Sí | Sí | Especifica un requisito que se debe cumplir para poder ejecutar el siguiente trabajo o fase. |
| Grupos de implementación | Sí | No | Sí | Define un conjunto lógico de máquinas de destino de implementación. |
| Trabajos de grupo de implementación | No | No | Sí | Especifica un trabajo que se liberará en un grupo de implementación. |
| Trabajos de implementación | Sí | No | No | Define los pasos de implementación. |
| Entorno | Sí | No | No | Representa una colección de recursos destinados a la implementación. Disponible solo con Azure Pipelines. |
| Puertas | No | No | Sí | Admite la recopilación y evaluación automáticas de señales de estado externo antes de completar una fase de lanzamiento. Disponible solo con la versión clásica. |
| Trabajos | Sí | Sí | Sí | Define la secuencia de ejecución de un conjunto de pasos. |
| Conexiones de servicio | Sí | Sí | Sí | Habilita una conexión a un servicio remoto necesario para ejecutar tareas en un trabajo. |
| Contenedores de servicio | Sí | No | No | Permite administrar el ciclo de vida de un servicio en contenedores. |
| Fases | Sí | No | Sí | Organiza los trabajos dentro de una canalización. |
| Grupos de tareas | No | Sí | Sí | Encapsula una secuencia de tareas en una sola tarea reutilizable. Si usa YAML, consulte plantillas. |
| Tareas | Sí | Sí | Sí | Define los bloques de creación que forma una canalización. |
| Templates (Plantillas [C++]) | Sí | No | No | Define el contenido reutilizable, la lógica y los parámetros. |
| Desencadenadores | Sí | Sí | Sí | Define el evento que hace que se ejecute una canalización. |
| Variables | Sí | Sí | Sí | Representa un valor que se reemplazará por los datos que se pasarán a la canalización. |
| Grupos de variables | Sí | Sí | Sí | Use para almacenar los valores que desea controlar y que estén disponibles en varias canalizaciones. |
TFS 2015 a TFS 2018 solo admite la interfaz clásica. En la tabla siguiente se indican las características de canalización disponibles al definir canalizaciones de compilación o versión.
| Característica | Compilación clásica | Versión clásica | Notas |
|---|---|---|---|
| Agentes | Sí | Sí | Especifica un recurso necesario en el que se ejecuta la canalización. |
| Aprobaciones | No | Sí | Define un conjunto de validaciones necesarias antes de completar una fase de implementación. |
| Artefactos | Sí | Sí | Admite la publicación o el consumo de diferentes tipos de paquetes. |
| Condiciones | Sí | Sí | Especifica las condiciones que se deben cumplir antes de ejecutar un trabajo. |
| Demandas | Sí | Sí | Garantiza que se cumplen los requisitos de canalización antes de ejecutar una fase de canalización. Requiere agentes auto-hospedados. |
| Dependencias | Sí | Sí | Especifica un requisito que se debe cumplir para poder ejecutar el siguiente trabajo o fase. |
| Grupos de implementación | No | Sí | Define un conjunto lógico de máquinas de destino de implementación. |
| Trabajos de grupo de implementación | No | Sí | Especifica un trabajo que se liberará en un grupo de implementación. |
| Trabajos | Sí | Sí | Define la secuencia de ejecución de un conjunto de pasos. |
| Conexiones de servicio | Sí | Sí | Habilita una conexión a un servicio remoto necesario para ejecutar tareas en un trabajo. |
| Fases | No | Sí | Organiza los trabajos dentro de una canalización. |
| Grupos de tareas | Sí | Sí | Encapsula una secuencia de tareas en una sola tarea reutilizable. Si usa YAML, consulte plantillas. |
| Tareas | Sí | Sí | Define los bloques de creación que forma una canalización. |
| Desencadenadores | Sí | Sí | Define el evento que hace que se ejecute una canalización. |
| Variables | Sí | Sí | Representa un valor que se reemplazará por los datos que se pasarán a la canalización. |
| Grupos de variables | Sí | Sí | Use para almacenar los valores que desea controlar y que estén disponibles en varias canalizaciones. |