CloudX ha publicado una herramienta de código abierto que reemplaza la acción oficial actions/setup-go de GitHub para acelerar los flujos de integración continua (CI) en proyectos de Go. Esta solución reduce el tiempo de ejecución de las pruebas en un 69% al resolver las limitaciones de la caché nativa de GitHub, que genera conflictos de rendimiento en entornos paralelos. El problema radica en que la clave de caché por defecto de actions/setup-go es incompleta, lo que provoca que las pruebas se vuelvan obsoletas y se ejecuten innecesariamente en cada iteración. Al utilizar la caché nativa de Go, que ya optimiza la compilación y las pruebas mediante el sistema de archivos local, la nueva herramienta evita la redundancia de datos. Los autores, Lukas Schwab y Peter Downs, explican que, aunque GitHub recomienda actions/setup-go, su mecanismo de sincronización de cachés entre ejecutores efímeros introduce latencias y trabajos duplicados. La solución propuesta aprovecha la estructura de caché de Go, que almacena resultados de compilación y pruebas en directorios locales basados en hashes de entrada, permitiendo reutilizar resultados sin recalcularlos. Este enfoque es particularmente efectivo en repositorios con múltiples jobs paralelos, como los de linters y pruebas. CloudX, que busca mantener tiempos de respuesta inferiores a 90 segundos para sus clientes, ha implementado esta optimización en su infraestructura de CI. La herramienta está diseñada para proyectos de Go de complejidad moderada a alta, donde la velocidad de entrega es crítica. Al eliminar la dependencia de la acción oficial de GitHub, los equipos pueden lograr una mayor consistencia en el rendimiento de sus pipelines de integración continua.
