Definición de flujos de procesos («pipelines») de despliegue continuo de contenedores
MF2746_3
Módulo formativo MF2746_3: Definición de flujos de procesos («pipelines») de despliegue continuo de contenedores
180 horas
C1: Aplicar procedimientos de creación de un paquete de «software» que se va a desplegar, utilizando una versión estable del código fuente, según las necesidades de uso y en condiciones de calidad y seguridad, para facilitar su despliegue y permitir la trazabilidad del sistema.
CE1.1 Enumerar herramientas de comprobación de la calidad del código fuente, describiendo las capacidades de validación sintáctica y semántica y de seguridad sobre el código desarrollado y librerías de terceros asociadas.
CE1.2 Describir herramientas de arquitectura para crear paquetes de «software», explicando la manera de incluir elementos requeridos tales como aplicaciones, librerías y/o «script» de instalación, entre otros, para un despliegue automático en cualquier entorno.
CE1.3 Detallar procedimientos de comprobación del contenido de un paquete «software», incluyendo los pasos a seguir para verificar que contiene los elementos requeridos, tales como versión anterior de la aplicación, los «script» de instalación y los «script» para el ajuste de datos, que permitan dar marcha atrás del proceso y actualizar el «software» a la versión anterior en caso de que haya algún problema durante la validación.
CE1.4 Clasificar pruebas sobre un paquete a desplegar, explicando el proceso de comprobación según el tipo (pruebas funcionales y no funcionales), indicando los pasos para verificar que incluye elementos para la ejecución de dichas pruebas.
CE1.5 Describir procedimientos para almacenamiento de resultados de pruebas sobre un paquete a desplegar, describiendo su procedimiento de uso, para la posterior reutilización, seguimiento y cualquier otra actividad relacionada con el versionado.
CE1.6 Enumerar aplicativos o soluciones de almacenamiento y recuperación de paquetes «software» en aplicativos, explicando cómo proceder en ambos casos, para su posterior reutilización, seguimiento y cualquier actividad que pueda ser requerida por el responsable de versionado.
CE1.7 En un supuesto práctico de aplicación de procedimientos de creación de un paquete de «software» que se va a desplegar, utilizando una versión estable del código fuente, según las necesidades de uso y en condiciones de calidad y seguridad, para facilitar su despliegue y permitir la trazabilidad del sistema:
– Obtener un código fuente de la rama de trabajo del repositorio, utilizando procesos de acceso, gestión y trazabilidad.
– Validar la calidad del código, usando herramientas de comprobación semántica y sintáctica y de seguridad sobre el código desarrollado y librerías de terceros asociadas.
– Crear el paquete de «software», incluyendo todos los elementos requeridos tales como aplicaciones, librerías y/o ‘script’ de instalación, entre otros, para un despliegue automático en cualquier entorno, utilizando herramientas de arquitectura, versionado, entornos y trazabilidad.
– Comprobar el paquete de «software», verificando que contiene los elementos, tales como
versión anterior de la aplicación, los «script» de instalación y los «script» para el ajuste de datos, que permitan dar marcha atrás del proceso y actualizar el «software» a la versión anterior en caso de que haya algún problema durante la validación.
– Comprobar el paquete de «software» a desplegar, verificando que incluye elementos para la ejecución de pruebas funcionales y no funcionales.
– Almacenar los resultados de las pruebas de «software» a desplegarse en un aplicativo, para su posterior reutilización, seguimiento y cualquier actividad relacionada con el versionado.
– Almacenar el paquete de «software» a desplegar en un aplicativo para su posterior reutilización, seguimiento y cualquier actividad relacionada con el versionado.
C2: Aplicar técnicas de validación, creación o modificación de las variables de entorno requeridas, para preparar un entorno de despliegue del paquete creado para cada aplicativo o servicio.
CE2.1 Describir procedimientos de validación automática por el «pipeline» de la existencia de los parámetros requeridos para desplegar en cada entorno, explicando su configuración, según los procesos definidos en la creación de la infraestructura.
CE2.2 Enumerar los posibles errores que puedan producirse durante el despliegue, explicando cómo detener la «pipeline» y revertir el proceso.
CE2.3 En un supuesto práctico de aplicación de técnicas de validación, creación o modificación de las variables de entorno requeridas, para preparar un entorno de despliegue del paquete creado para cada aplicativo o servicio:
– Validar la existencia de unos parámetros requeridos para desplegar en cada entorno de forma automática por el «pipeline», mediante configuración, según los procesos definidos en la creación de la infraestructura.
– Recopilar valores de los parámetros a utilizar en cada entorno, obteniéndolos de la aplicación definida durante la creación de la infraestructura.
– Verificar que los parámetros de los entornos recopilados se han incluido en el «software» a desplegar, ejecutando el despliegue y comprobando la ausencia de errores.
C3: Aplicar procedimientos para desplegar una nueva versión del «software» en un entorno, utilizando el paquete creado por el «pipeline», para que se pueda validar antes de la puesta en funcionamiento.
CE3.1 Describir procedimientos de instalación de aplicaciones adicionales relacionadas y previas al despliegue como parte de un paquete o, en caso de ser algo estático, de modo que se pueda acceder al repositorio del «software» para proceder a su instalación.
CE3.2 Explicar el proceso para la instalación de una nueva versión del «software» y aquellos artefactos que se requieran para realizar las tareas de integración con otros sistemas, ejecutado «script» de validación de la instalación.
CE3.3 Detallar el procedimiento para las pruebas de integración, tal como ejecutar «script» de prueba, para comprobar que el «software» desplegado se integra de manera automática con el resto de las aplicaciones de la solución.
CE3.4 Enumerar los posibles errores que puedan producirse durante el despliegue, explicando cómo detener la «pipeline» y revertir el proceso.
CE3.5 En un supuesto práctico de aplicación de procedimientos para desplegar una nueva versión del «software» en un entorno, utilizando el paquete creado por el «pipeline», para que se pueda validar antes de la puesta en funcionamiento:
– Instalar unas aplicaciones adicionales relacionadas y previas al despliegue como parte del paquete o, en caso de ser algo estático, de modo que se pueda acceder al repositorio del «software» para proceder a su instalación.
– Instalar una nueva versión del «software» y aquellos artefactos que se requieran para realizar las tareas de integración con otros sistemas, ejecutado «script» de validación de la instalación.
– Comprobar que el «software» desplegado se integra de manera automática con el resto de las aplicaciones de la solución, ejecutado «script» de prueba que realicen la tarea.
– Recopilar los errores detectados durante el despliegue, deteniendo la «pipeline» y destruyendo todos los objetos intermedios creados hasta el instante de la ejecución.
C4: Aplicar procedimientos de validación de un nuevo «software» instalado, comprobando que cumple todos los requerimientos, efectuando pruebas no funcionales, funcionales y rendimiento, resolviendo los fallos detectados y actualizando los repositorios de versiones para garantizar un despliegue libre de errores.
CE4.1 Enumerar herramientas definidas en el paquete para pruebas y validación automatizada del «software», explicando su configuración y gestión.
CE4.2 Enumerar herramientas externas para pruebas y validación automatizada del «software», explicando su configuración y gestión.
CE4.3 Reconocer la tipología de pruebas de verificación del «pipeline», incluyendo pruebas no funcionales, funcionales, de rendimiento y de integración con otras aplicaciones relacionadas, explicando los pasos para comprobar en cada caso que accede a los flujos de trabajo y datos de prueba de cada uno de los entornos de ejecución.
CE4.4 Describir procedimientos para almacenamiento de resultados de pruebas sobre un «software» instalado, describiendo su utilización, para su acceso y posterior uso en la toma de decisiones del responsable de versionado.
CE4.5 Explicar el proceso de actualización o retorno a la versión estable anterior para aplicarla en casos de fallos de validación del nuevo código, describiendo cómo efectuarla de manera automática tanto para código fuente como para los datos.
CE4.6 Detallar el proceso de verificación de la monitorización del sistema desplegado,
explicando el proceso para comprobar que la información que produce el «software» es supervisada.
CE4.7 En un supuesto práctico de aplicación de procedimientos de validación de un nuevo «software» instalado, comprobando que cumple todos los requerimientos, efectuando pruebas no funcionales, funcionales y rendimiento, resolviendo los fallos detectados y actualizando los repositorios de versiones para garantizar un despliegue libre de errores:
– Validar un «software» automáticamente, utilizando bien las herramientas definidas en el paquete o bien un «software» de pruebas.
– Comprobar el «pipeline», verificando que accede a los flujos de trabajo y datos de prueba de cada uno de los entornos de ejecución, incluyendo pruebas no funcionales, funcionales, de rendimiento y de integración con otras aplicaciones relacionadas.
– Almacenar los resultados de las pruebas realizadas, guardándolos en las aplicaciones al efecto, para su acceso y posterior uso según necesidades del versionado.
– Resolver los fallos de validación del nuevo código, mediante la actualización del entorno con la versión estable anterior, efectuándola de manera automática tanto para código fuente como para datos.
– Actualizar el paquete de «software» creado en el repositorio de versiones, en caso de no detectarse fallos, incorporándolo según la operativa de versiones.
– Actualizar las dependencias entre aplicaciones y versiones de manera automática según la operativa que disponga la herramienta de versiones.
– Comprobar que la información que produce el «software» desplegado se envía al sistema de monitorización existente, revisándolo en el propio «software» de monitorización.
Capacidades cuya adquisición debe ser completada en un entorno real de trabajo.
C1 respecto a CE1.7; C2 respecto a CE2.3; C3 respecto a CE3.5 y C4 respecto a CE4.7.
Otras Capacidades:
Comunicarse eficazmente con las personas adecuadas en cada momento, respetando los canales establecidos en la organización.
Adaptarse a la organización, a sus cambios organizativos y tecnológicos, así como a situaciones o contextos nuevos.
Mantener una actitud asertiva, empática y conciliadora con las personas demostrando cordialidad y amabilidad en el trato.
Mostrar iniciativa en la búsqueda de soluciones y en la resolución de problemas.
Aplicar de forma efectiva el principio de igualdad de trato y no discriminación en las condiciones de trabajo entre mujeres y hombres.
1 Metodologías aplicadas al despliegue continuo (DevOps)
Metodologías de desarrollo: Cascada («Waterfall»), ágiles (Agile). Ciclo de vida del desarrollo.
Herramientas de gestión de proyectos de desarrollo.
Despliegue Continuo (CD).
2 Creación de paquetes de «software» para desplegar
Herramientas de comprobación de la calidad del código fuente. Validación sintáctica y semántica y de seguridad.
Herramientas de arquitectura para crear paquetes de «software» y despliegue automático. Pruebas de contenido del paquete y marcha atrás del proceso.
Tipología de pruebas sobre un paquete a desplegar. Pruebas funcionales y no funcionales.
Aplicativos para almacenamiento de resultados de pruebas.
Aplicativos y procedimientos de almacenamiento y recuperación de paquetes «software» en aplicativos de versionado.
3 Preparación del entorno de despliegue
Validación, creación o modificación de las variables de entorno requeridas según cada aplicativo o servicio.
Validación automática de la existencia de los parámetros requeridos por el «pipeline».
Configuración. Recopilación de valores de parámetros.
Detección y resolución de errores. Reversión del proceso y retorno a la versión anterior.
4 Despliegue de nuevas versiones del «software»
Aplicaciones adicionales relacionadas y previas al despliegue. Instalación.
Instalación de nueva versión del «software» y artefactos de integración con otros sistemas.
Validación de la instalación.
Pruebas de integración.
5 Validación del nuevo «software» instalado
Herramientas definidas en el paquete para pruebas y validación automatizada. Configuración y gestión.
Herramientas externas para pruebas y validación automatizada del «software». Configuración y gestión.
Pruebas de verificación del «pipeline». Tipología. Pruebas no funcionales, funcionales, de rendimiento y de integración con otras aplicaciones.
Aplicativos y procedimientos para almacenamiento de resultados de pruebas.
Actualización de versión y retorno automatizado a la versión estable anterior en casos de fallo.
Verificación de la monitorización del sistema desplegado.
SI QUIERES APRENDER MÁS…
TE LLAMAMOS Y TE LO EXPLICAMOS TODO
