César Muñoz Peñailillo
Desarrollador de Software en Suncast
DevOps, es una metodología de trabajo del área del desarrollo de software, que tiene como objetivo generar productos de una manera mucho más rápida, segura y a un menor costo para la empresa.
Una de las prácticas recomendadas de DevOps es la integración continua. La integración continua es utilizada dentro de los equipos de desarrollo de software para automatizar los cambios del código en un proyecto con varios programadores. Esta práctica facilita el proceso de fusión de nuevos cambios que un desarrollador aporta en un repositorio central compartido, para que posteriormente sea puesto a prueba y desplegado en un ambiente de producción de manera segura y eficiente.
Suncast, a medida que ha madurado en su tecnología, ha incorporado la integración continua como la base de sus desarrollos, mejorando de manera significativa la productividad del equipo y brindando una capa extra de seguridad. El principal beneficio ha sido reducir considerablemente la cantidad de errores en el código, conocidos como bugs.
Desde el levantamiento de sus servicios en la nube, Suncast ha utilizado Amazon Web Services (AWS). Sus herramientas han sido un pilar fundamental en este proceso, ya que nos han permitido establecer flujos de trabajo automatizados de integración continua, mediante el servicio AWS CodePipeline.
El servicio AWS CodePipeline se encarga de automatizar las distintas fases que conlleva la integración continua.
Pruebas: Esta fase se encarga de realizar las pruebas necesarias a nivel de código previamente definidas, de esta forma se valida que los nuevos cambios en el proyecto no ocasionarán conflictos.
Implementación: La implementación se encarga de compilar el proyecto una vez que se han aprobado las pruebas necesarias, generando un paquete final de archivos que incluye los nuevos cambios, listo para ser desplegados en la nube.
Despliegue: En la fase de despliegue se recibe el paquete generado en la implementación y se analizan los cambios, para que finalmente estos cambios se ejecuten en el ambiente de producción, creando, modificando o eliminando el contenido que corresponda.
De esta manera, una vez que el flujo de integración continua ya ha sido definido y configurado, los nuevos cambios que surgen al programar dentro un proyecto son sometidos a un riguroso proceso de pruebas que validan su implementación. En conclusión, la integración continua ha permitido que el área de desarrollo de software avance en paralelo a los desafíos comerciales sin perjudicar los servicios digitales que Suncast ya ofrece a sus clientes.
Comentários