Conceptos clave para los nuevos usuarios de Azure Pipelines
Servicios de Azure DevOps
Obtenga información sobre los conceptos y componentes clave que componen Azure Pipelines. Comprender los términos básicos y las partes de una canalización puede ayudarle a compilar, probar e implementar el código de forma más eficaz.
Visión general de los conceptos clave
- Un desencadenador indica a una canalización que se ejecute.
- Una canalización se compone de una o varias etapas . Una canalización se puede implementar en uno o varios entornos.
- Una fase es una forma de organizar los trabajos en una canalización y cada fase puede tener uno o más trabajos.
- Cada trabajo se ejecuta en un agente. Un trabajo también puede ser sin agente.
- Cada agente de ejecuta un trabajo que contiene uno o varios pasos de .
- Un paso puede ser una tarea o un script, y es el bloque de compilación más pequeño de una canalización.
- Una tarea es un script empaquetado previamente que realiza una acción, como invocar una API REST o publicar un artefacto de compilación.
- Un artefacto es una recopilación de archivos o paquetes que ha publicado una ejecución.
Términos de Azure Pipelines
Agente
Cuando se ejecuta la compilación o la implementación, el sistema inicia uno o varios trabajos. Un agente es una infraestructura informática con software de agente instalado que ejecuta un trabajo cada vez. Por ejemplo, el trabajo podría ejecutarse en un agente ubuntu hospedado por Microsoft.
Para obtener información más detallada sobre los distintos tipos de agentes y cómo usarlos, consulte Azure Pipelines Agents.
Aprobaciones
Las aprobaciones definen un conjunto de validaciones necesarias antes de que se ejecute una implementación. La aprobación manual es una comprobación común realizada para controlar las implementaciones en entornos de producción. Cuando se configuran comprobaciones en un entorno, la ejecución del pipeline se pausa hasta que se completen todas las comprobaciones correctamente.
Artefacto
Un artefacto es una colección de archivos o paquetes publicados tras un proceso de ejecución. Los artefactos están disponibles para tareas posteriores, como la distribución o la implementación. Para obtener más información, consulte Artefactos en Azure Pipelines.
Entrega continua
La entrega continua (CD) es un proceso por el que el código se compila, prueba e implementa en una o varias fases de prueba y producción. La implementación y las pruebas en varias fases ayudan a impulsar la calidad. Los sistemas de integración continua producen artefactos implementables, que incluyen la infraestructura y las aplicaciones. Las tuberías de lanzamiento automatizadas consumen estos artefactos para lanzar nuevas versiones y correcciones en los sistemas existentes. Los sistemas de supervisión y alertas se ejecutan constantemente para impulsar la visibilidad de todo el proceso de CD. Este proceso garantiza que los errores se detectan a menudo y temprano.
Integración continua
La integración continua (CI) es la práctica que usan los equipos de desarrollo para simplificar las pruebas y la creación de código. CI ayuda a detectar errores o problemas al principio del ciclo de desarrollo, lo que facilita y acelera la corrección. Las pruebas y compilaciones automatizadas se ejecutan como parte del proceso de CI. El proceso se puede ejecutar según una programación establecida, siempre que se inserte código o ambos. Los elementos conocidos como artefactos se generan a partir de sistemas de CI. Las canalizaciones de versión de entrega continua los usan para impulsar implementaciones automáticas.
Despliegue
Una implementación de canalización clásica es la acción de ejecutar las tareas de una fase. La implementación puede incluir la ejecución de pruebas automatizadas, la implementación de artefactos de compilación y cualquier otra acción especificada para esa fase.
Para las canalizaciones de YAML, una implementación hace referencia a un trabajo de implementación. Un trabajo de implementación es una colección de pasos que se ejecutan secuencialmente en un entorno. Puede usar estrategias como runOnce, rolling o canary para los trabajos de implementación.
Grupo de implementación
Un grupo de implementación es un conjunto de máquinas de destino de implementación que tienen agentes instalados. Un grupo de implementación es simplemente otra agrupación de agentes, como un grupo de agentes. Puede establecer los destinos de implementación en una canalización para un trabajo mediante un grupo de implementación. Obtenga más información sobre los agentes de aprovisionamiento para los grupos de implementación.
Medio ambiente
Un entorno es una colección de recursos donde se implementa la aplicación. Un entorno puede contener una o varias máquinas virtuales, contenedores, aplicaciones web o cualquier servicio. Las canalizaciones se implementan en uno o varios entornos después de que se complete una compilación y se ejecuten las pruebas.
Trabajo
Una fase contiene uno o varios trabajos. Cada trabajo se ejecuta en un agente. Un trabajo representa un límite de ejecución de un conjunto de pasos. Todos los pasos se ejecutan juntos en el mismo agente. Los trabajos son más útiles cuando desea ejecutar una serie de pasos en distintos entornos. Por ejemplo, puede que quiera compilar dos configuraciones: x86 y x64. En este caso, tiene una fase y dos trabajos. Un trabajo sería para x86 y el otro sería para x64.
Los trabajos sin agente se ejecutan en Azure DevOps y Azure DevOps Server sin usar un agente. Un número limitado de tareas admiten trabajos sin agente.
Tubería
Una canalización define el proceso de integración e implementación continuas de la aplicación. Se compone de una o varias fases. Se puede considerar como un flujo de trabajo que define cómo se ejecutan los pasos de prueba, compilación e implementación.
En el caso de las canalizaciones clásicas, también se puede hacer referencia a una canalización como definición.
Versión
En el caso de las canalizaciones clásicas, una versión es un conjunto con versiones de artefactos especificados en una canalización. La versión incluye una instantánea de toda la información necesaria para llevar a cabo todas las tareas y acciones del proceso de lanzamiento, como fases, tareas, políticas como desencadenantes y aprobadores, y opciones de implementación. Puede crear una versión manualmente, con un desencadenador de implementación o con la API REST.
En el caso de las canalizaciones YAML, las fases de compilación y versión se encuentran en una canalización de varias fases.
Correr
Una ejecución representa una ejecución de una canalización. Recopila los registros asociados a la ejecución de los pasos y los resultados de las pruebas en ejecución. Durante una ejecución, Azure Pipelines procesará primero la canalización y, a continuación, enviará la ejecución a uno o varios agentes. Cada agente ejecuta tareas. Obtenga más información sobre la secuencia de ejecución de una canalización.
En las canalizaciones clásicas, una construcción representa una ejecución de una canalización.
Guión
Un script ejecuta un código como paso en tu canalización mediante la línea de comandos, PowerShell o Bash. Puede escribir scripts multiplataforma para macOS, Linux y Windows. A diferencia de una tarea, un script es un código personalizado específico de la canalización.
Etapa
Una fase es un límite lógico en la canalización. Se puede usar para marcar la separación de problemas (por ejemplo, Compilación, Control de calidad y Producción). Cada fase contiene uno o varios trabajos. Al definir varias fases en una canalización, de forma predeterminada, se ejecutan una después de la otra. Puede especificar las condiciones para cuando se ejecuta una fase. Cuando esté pensando en si necesita una etapa, pregúntese:
- ¿Los grupos independientes administran diferentes partes de esta canalización? Por ejemplo, podría tener un administrador de pruebas que administre los trabajos relacionados con las pruebas y otro administrador que administre los trabajos relacionados con la implementación de producción. En este caso, tiene sentido tener fases independientes para pruebas y producción.
- ¿Hay un conjunto de aprobaciones de que están conectadas a un trabajo específico o a un conjunto de trabajos? Si es así, puede usar fases para dividir los trabajos en grupos lógicos que requieren aprobaciones.
- ¿Hay trabajos que necesiten ejecutarse durante mucho tiempo? Si un trabajo de la canalización tiene un tiempo de ejecución largo, tiene sentido ponerla en su propia fase.
Paso
Un paso es el bloque de construcción más pequeño de un conducto. Por ejemplo, una canalización puede constar de pasos de compilación y prueba. Un paso puede ser un script o una tarea. Una tarea es simplemente un script creado previamente que se ofrece como una comodidad para usted. Para ver las tareas disponibles, consulte la referencia Tareas de compilación y de versión. Para obtener información sobre cómo crear tareas personalizadas, vea Crear una tarea personalizada.
Tarea
Una tarea es el bloque de compilación para definir la automatización en una canalización. Una tarea es un procedimiento o script empaquetado que se ha abstraído con un conjunto de entradas.
Desencadenador
Un desencadenador es un elemento que se configura para indicar a la canalización el momento de la ejecución. Puede configurar una canalización para que se ejecute cuando se realiza un 'push' a un repositorio, en horarios programados, o al completarse otra compilación. Todas estas acciones se conocen como desencadenadores. Para obtener más información, consulte Desencadenadores de compilación y Desencadenadores de versión.
Biblioteca
La biblioteca incluye archivos seguros y grupos de variables. los archivos seguros son una manera de almacenar archivos y compartirlos entre canalizaciones. Por ejemplo, puede que quiera hacer referencia al mismo archivo para canalizaciones diferentes. En ese caso, puede guardar el archivo en Biblioteca y usarlo cuando lo necesite. Los grupos de variables almacenan valores y secretos que es posible que quiera pasar a una canalización de YAML o que estén disponibles en varias canalizaciones.
Acerca de los autores
- Dave Jarvis contribuyó al gráfico de información general de conceptos clave.