Conceptos de CodePipeline - AWS CodePipeline

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Conceptos de CodePipeline

El modelado y la configuración del proceso de lanzamiento automatizado es más fácil si comprende los conceptos y términos utilizados en AWS CodePipeline. A continuación, se muestran algunos conceptos que debe conocer cuando utiliza CodePipeline.

Para obtener un ejemplo de una canalización de DevOps, consulte Ejemplo de canalización de DevOps.

Condiciones de la canalización

Los siguientes términos se utilizan en CodePipeline:

Canalizaciones

Una canalización es una construcción de flujo de trabajo que describe cómo los cambios en el software pasan por el proceso de lanzamiento. Cada canalización se compone de una serie de etapas.

Etapas

Una etapa es una unidad lógica que puede utilizar para aislar un entorno y limitar el número de cambios simultáneos en ese entorno. Cada etapa contiene acciones que se realizan en los artefactos de la aplicación. El código fuente es un ejemplo de un artefacto. Una etapa podría ser una etapa de compilación, donde se compila el código fuente y se ejecutan pruebas. También puede ser una etapa de implementación, donde el código se implementa en entornos de tiempo de ejecución. Cada etapa se compone de una serie de acciones en serie o en paralelo.

Acciones

Una acción es un conjunto de operaciones realizadas en el código de la aplicación y configuradas para que las acciones se ejecuten en la canalización en un punto especificado. Esto puede incluir cosas como una acción de origen a partir de un cambio de código, una acción para implementar la aplicación en instancias, etc. Por ejemplo, una etapa de implementación puede contener una acción de implementación que implemente código en un servicio informático como Amazon EC2 oAWS Lambda.

Los tipos de acción CodePipeline válidos sonsource,build,test,deploy,approval, yinvoke. Para obtener una lista de los proveedores de acciones, consulte Proveedores y tipos de acciones válidos en CodePipeline .

Las acciones se pueden ejecutar en serie o en paralelo. Para obtener información sobre las acciones seriadas y paralelas en una etapa, consulte larunOrderInformación de enrequisitos de la estructura de las.

Ejecuciones de canalización

Una ejecución es un conjunto de cambios lanzados por una canalización. Cada ejecución de canalización es única y tiene su propio ID. Una ejecución corresponde a un conjunto de cambios, como una confirmación combinada o una versión manual de la última confirmación. Dos ejecuciones pueden lanzar el mismo conjunto de cambios en diferentes momentos.

Mientras que una canalización puede procesar varias ejecuciones al mismo tiempo, una etapa de canalización procesa solo una ejecución a la vez. Para hacer esto, una etapa se bloquea mientras procesa una ejecución. Dos ejecuciones de una canalización no pueden ocupar la misma etapa al mismo tiempo. La ejecución en espera de entrar en la etapa ocupada se refiere a unejecución entrante. Una ejecución entrante puede fallar, sustituirse o detenerse manualmente. Para obtener más información sobre cómo funcionan las ejecuciones entrantes, consulteCómo funcionan las ejecuciones entrantes.

Las ejecuciones de canalizaciones atraviesan etapas de canalización en orden. Los estados válidos para las canalizaciones son InProgress, Stopping, Stopped, Succeeded, Superseded y Failed.

Para obtener más información, consulteEjecución de canalizaciones.

Ejecuciones detenidas

La ejecución de la canalización se puede detener manualmente para que la ejecución de la canalización en curso no continúe por la canalización. Si se detiene manualmente, una ejecución de canalización muestra un estado Stopping hasta que se detiene por completo. Después, muestra un estado Stopped. Se puede volver a intentar una ejecución de canalización Stopped.

Hay dos formas de detener una ejecución de canalización:

  • Detener y esperar

  • Detener y abandonar

Para obtener información sobre los casos de uso para detener una ejecución y detalles de la secuencia para estas opciones, consulte Cómo se detienen las ejecuciones de canalización.

Ejecuciones con error

Si una ejecución genera un error, se detiene y no atraviesa completamente la canalización. Su estado es FAILED y la etapa está desbloqueada. Una ejecución más reciente puede ponerse al día y entrar en la etapa desbloqueada y bloquearla. Puede volver a intentar una ejecución fallida a menos que la ejecución fallida haya sido sustituida o no se pueda volver a intentar.

Ejecuciones sustituidas

Para entregar el último conjunto de cambios a través de una canalización, las ejecuciones más recientes pasan y sustituyen las ejecuciones menos recientes que ya se ejecutan a través de la canalización. Cuando esto ocurre, la ejecución más reciente sustituye a la ejecución anterior. Una ejecución más reciente puede sustituir una ejecución en un punto determinado, que es el punto entre etapas.

Si una ejecución está esperando para entrar en una etapa bloqueada, una ejecución más reciente podría ponerse al día y sustituirla. La ejecución más reciente ahora espera a que la etapa se desbloquee y la ejecución sustituida se detiene con un estado SUPERSEDED. Cuando se sustituye una ejecución de canalización, la ejecución se detiene y no atraviesa completamente la canalización. Ya no puede volver a intentar la ejecución sustituida después de que se haya reemplazado en esta etapa.

Para obtener más información acerca de las ejecuciones sustituidas y las etapas bloqueadas, consulte Cómo se procesan las ejecuciones en una canalización .

Ejecuciones de etapas

UNAetapa de ejecuciónes el proceso de completar todas las acciones dentro de una etapa. Para obtener información sobre cómo funciona la ejecución de una etapa e información sobre las fases bloqueadas, consulteCómo se procesan las ejecuciones en una canalización .

Los estados válidos para las etapas sonInProgress,Stopping,Stopped,Succeeded, yFailed. Para obtener más información, consulteEjecución por etapas.

Ejecuciones de acción

Una ejecución de acción es el proceso de completar una acción configurada que opera en artefactos designados. Estos pueden ser artefactos de entrada, artefactos de salida o ambos. Por ejemplo, una acción de compilación podría ejecutar comandos de compilación en un artefacto de entrada, como compilar código fuente de la aplicación. Los detalles de ejecución de acciones incluyen un ID de ejecución de acción, el desencadenador de origen de ejecución de canalización relacionado y los artefactos de entrada y salida de la acción.

Los estados válidos para las acciones sonInProgress,Abandoned,Succeeded, o bienFailed. Para obtener más información, consulteActionExecution.

Tipos de acción

Tipos de acciónson acciones preconfiguradas que están disponibles para su selección en CodePipeline. El tipo de acción lo definen su propietario, proveedor, versión y categoría. El tipo de acción proporciona parámetros personalizados que se utilizan para completar las tareas de acción de una canalización.

Para obtener información sobre laAWSservicios de y productos y servicios de terceros que puede integrar en su canalización según el tipo de acción, consulteIntegraciones con CodePipeline Tipos de acción.

Para obtener información sobre los modelos de integración compatibles con los tipos de acción en CodePipeline, consulteReferencia del modelo de integración.

Para obtener información sobre cómo los proveedores externos pueden configurar y administrar tipos de acciones en CodePipeline, consulteTrabajar con tipos de acciones.

Transiciones

Una transición es el punto en el que la ejecución de una canalización se mueve a la siguiente etapa de la canalización. Puede deshabilitar la transición entrante de una etapa para evitar que las ejecuciones entren en esa etapa y, a continuación, puede habilitar la transición para permitir que las ejecuciones continúen. Cuando llega más de una ejecución a una transición deshabilitada, solo la ejecución más reciente continúa hasta la siguiente etapa cuando se habilita la transición. Esto significa que las ejecuciones más recientes continúan sustituyendo a las ejecuciones en espera mientras la transición está deshabilitada y, a continuación, una vez habilitada la transición, la ejecución que continúa es la ejecución sustituida.


          Una canalización consta de etapas, que contienen acciones, que están separadas por transiciones que se pueden habilitar y deshabilitar.

Artifacts

Los artefactos se refieren a la recopilación de datos, como el código fuente de la aplicación, las aplicaciones compiladas, las dependencias, los archivos de definiciones, las plantillas, etc., en los que se trabaja mediante acciones de canalización. Algunas acciones producen artefactos y otras los consumen. En una canalización, los artefactos pueden ser el conjunto de archivos en los que trabaja una acción (artefactos de entrada) o la salida actualizada de una acción completada (artefactos de salida).

Las acciones transfiere la salida a otra acción para su posterior procesamiento utilizando el bucket de artefactos de canalización. CodePipeline copia los artefactos en el almacén de artefactos, donde la acción los recoge. Para obtener más información acerca de los artefactos, consulte Artefactos de entrada y salida.

Revisiones de origen

Cuando se realiza un cambio de código fuente, se crea una nueva versión. Una revisión de código fuente es la versión de un cambio de código fuente que desencadena una ejecución de canalización. Una ejecución procesa solo esa revisión de código fuente. En los repositorios de GitHub y CodeCommit, es la confirmación. Para acciones o buckets de S3, es la versión del objeto.