Ejemplo de canalización de DevOps
Como ejemplo de una canalización de DevOps, una canalización de dos etapas podría tener una etapa de código fuente denominada Source (Código fuente) y una segunda etapa llamada Prod (Producción). En este ejemplo, la canalización está actualizando la aplicación con los últimos cambios e implementando de forma continua el último resultado. Antes de implementar la aplicación más reciente, la canalización compila y prueba la aplicación web. En este ejemplo, un grupo de desarrolladores ha configurado una plantilla de infraestructura y el código fuente para una aplicación web en un repositorio de GitHub denominado MyRepository.
Por ejemplo, un desarrollador inserta una corrección en la página de índice de la aplicación web y ocurre lo siguiente:
-
El código fuente de la aplicación se mantiene en un repositorio configurado como una acción de origen de GitHub en la canalización. Cuando los desarrolladores envían confirmaciones al repositorio, CodePipeline detecta el cambio insertado y se inicia una ejecución de canalización desde Source Stage (Etapa de origen).
-
La acción de origen de GitHub se completa correctamente (es decir, los últimos cambios se han descargado y almacenado en el bucket de artefactos exclusivo de esa ejecución). Los artefactos de salida producidos por la acción de origen de GitHub, que son los archivos de aplicación del repositorio, se utilizan como artefactos de entrada en los que las acciones trabajarán en la siguiente etapa.
-
La ejecución de la canalización pasa de la Source Stage (Etapa de código fuente) a la Prod Stage (Etapa de producción). La primera acción en la etapa de producción ejecuta un proyecto de compilación creado en CodeBuild y configurado como una acción de compilación en la canalización. La tarea de compilación extrae una imagen de entorno de compilación y crea la aplicación web en un contenedor virtual.
-
La siguiente acción en la etapa de producción es un proyecto de prueba de unidad creado en CodeBuild y configurado como una acción de prueba en la canalización.
-
A continuación se trabaja con el código de unidad probado mediante una acción de implementación en la etapa de producción que implementa la aplicación en un entorno de producción. Una vez que la acción de implementación se complete correctamente, la acción final en la etapa es un proyecto de prueba de integración creado en CodeBuild y configurado como una acción de prueba en la canalización. La acción de prueba llama a scripts de shell que instalan y ejecutan una herramienta de prueba, como un comprobador de vínculos, en la aplicación web. Una vez completado con éxito, el resultado es una aplicación web compilada y un conjunto de resultados de prueba.
Los desarrolladores pueden agregar acciones a la canalización que implementen o seguir probando la aplicación después de compilarla y probarla para cada cambio.
Para obtener más información, consulte Cómo funcionan las ejecuciones de canalización.