Es
Eng

Optimizando procesos de desarrollo e implementación con GitHub

Cliente
Industria Tecnológica
Partner
GitHub
Productos y servicios
DevOps
Sector
País

Nuestro cliente, una empresa líder en software de gestión empresarial, enfrentaba desafíos en sus procesos de desarrollo e implementación. Su sistema actual dependía de dos plataformas separadas, Harness y Azure DevOps, lo que generaba ineficiencias y riesgos de seguridad.

Cuando un desarrollador necesita implementar un nuevo microservicio tenía que navegar entre dos plataformas independientes (Harness y Azure DevOps) según el tipo de servicio. Esto creaba confusión y pérdida de tiempo valioso.

Los equipos usaban diferentes flujos de trabajo para tareas similares, lo que provocaba inconsistencias y posibles brechas de seguridad. Por ejemplo, algunos equipos podrían no haber implementado análisis de seguridad del código.

Identificar vulnerabilidades era un proceso lento y reactivo. Requería revisar manualmente informes de varias herramientas dispersas en ambas plataformas, sin un panel de control central. Este enfoque podía conducir a errores en los análisis de vulnerabilidades, dejando potencialmente aplicaciones expuestas.

Crear nuevas canalizaciones implicaba una configuración manual, lo que ralentizaba los ciclos de desarrollo y obstaculizaba la agilidad.

La implementación de GitHub permitió mayor escalabilidad y seguridad. Podemos escalar hacia arriba o hacia abajo para satisfacer las necesidades de nuestro cliente, gracias a la escalabilidad de Azure. Esto significa que podemos ofrecer una solución rentable.

Las tecnologías de Azure también brindaron mayor seguridad, gracias a las sólidas funciones de seguridad de Azure. GitHub nos permitió:

  • Tener un impacto positivo en las propuestas de estrategia de ramas para aumentar la seguridad y funcionalidad de los flujos de trabajo.
  • Establecer pautas que permitan una base reutilizable y escalable para el futuro.
  • Integrar herramientas DevSecOps en el flujo CI/CD: SAST, DAST y análisis de seguridad para código fuente y contenedores.
  • Implementar CODEOWERS para mejorar la gestión de repositorios.
  • Establecer un sistema de automatización de pipelines: los usuarios pueden seleccionar qué repositorio quieren inyectar en qué archivos de flujo de trabajo según su tipo (micro front-end, micro o IAC).

Después del proceso de evaluación e implementación, el equipo del cliente ahora puede configurar rápida y fácilmente un nuevo repositorio que ya está listo con su integración de herramientas de análisis y el proceso de implementación, todo utilizando la estrategia de rama "One-Branch".

El uso de GitHub Actions facilitó la implementación de código y aplicaciones con la ayuda de los procesos DAST y SAST implementados, generando una base reutilizable y escalable para el futuro.

Todos los pipelines se encuentran en una única plataforma (GitHub), lo que además de simplificar la gobernanza, se encuentran en una línea base de plantillas, mantenidas por el área de DevOps del cliente y que pueden ser fácilmente utilizadas por diferentes equipos.

La mayoría de los pipelines integran herramientas de escaneo para detectar fallas en el código de manera temprana, lo que reduce el porcentaje de vulnerabilidades que aparecen en las aplicaciones de producción.

La solución también ayuda a aplicar puertas de calidad para garantizar que el código implementado tenga una consistencia mínima para ser considerado correcto.

Algunos de los resultados clave de esta solución fueron:

  • Todos los pipelines están estandarizados y centralizados en una sola herramienta. Esto facilita la gestión y monitorización de los pipelines.
  • Se capacitó a todos los equipos en la nueva estrategia de ramas. Esto asegura que todos estén alineados y sepan cómo utilizar la nueva estrategia.
  • Se está utilizando GitHub Packages para almacenar las bibliotecas internas. Esto facilita la gestión y el uso compartido de bibliotecas.
  • GitHub se conecta a otras plataformas como Jira de manera simple y ordenada utilizando commits inteligentes. Esto ayuda a los desarrolladores a realizar un seguimiento de sus tareas sin tener que cambiar entre diferentes plataformas.
  • Implementar nuevos repositorios es fácil, ya que solo requiere utilizar la herramienta de generación de repositorio/pipeline. Esto facilita el inicio de nuevos proyectos.

¡Transforma el desarrollo de software de tu empresa con CleverIT!

¿Enfrentas desafíos en tus procesos de desarrollo e implementación de software?