Closed AlexRuiz7 closed 1 year ago
Tras comparar algunos de los sistemas de CI disponibles, tales como Travis, Jenkins, CircleCI y GitHub Actions, se ha decidido usar como sistema principal GitHub Actions, por simplicidad, dado la gran documentación y variedad de ejemplos que ofrece, por su integración out-of-the-box y por familiaridad.
Como sistema de CI adicional se ha escogido CircleCI, por ser gratuito, ampliamente usado y fácil de configurar e integrar con GitHub.
En la siguiente imagen podemos ver como el pull request #17 el workflow se ha ejecutado y los tests han pasado en las 3 versiones de NodeJS definidas. Adicionalmente, podríamos configurar el repositorio para impedir que un pull request se fusione si los tests no pasan.
En la siguiente imagen podemos ver como el pull request #18 el workflow de CircleCI se ha ejecutado y los tests han pasado.
Además, añadimos los badges al README para tener visibilidad:
En el caso de GitHub Actions no se va a utilizar el contenedor creado en la práctica anterior, ya que GitHub dispone de workflows listos para usar y optimizados (mediante uso de caché). Configurar el workflow equivale a un par de clics desde la UI de GitHub.
Sin embargo, en cuanto a CircleCI, como requiere algo más de configuración y como no dispongo de experiencia previa con este sistema, se utilizará la imagen de Docker que tenemos subida y actualizada en el registro de DockerHub.
Objetivos
Issues