Closed Slowmybrosh closed 11 months ago
@JJ Cuando puedas echale un vistazo a esto :)
Se realizan los siguientes cambios:
@JJ He reescrito toda la sección de herramientas de CI, realizando una investigación de las herramientas más utilizadas actualmente y aportando las fuentes de información de las que se han obtenido los datos, realizado un analisis de las ventajas de cada herramienta, reunido opiniones de los usuarios con la correspondiente fuente de información y detallados los motivos por los que aceptar / rechazar la herramienta.
Sé que el PR está "aprobado", pero me gustaría escuchar sugerencias sobre si lo que he escrito está mejor para mejorar el proyecto, no solo en este PR sino también en decisiones técnicas para el futuro
No, no está mejor. Tiene más cosas. Ninguna de las cuales explica la decisión tomada, sino simplemente rellena un apartado. ¿Antes de implementar las GitHub actions miraste a ver si TeamCity iba bien? ¿Has mirado siquiera, como te dije en la primera ronda, si tú puedes usar Jenkins o no? ¿Has mirado a ver si esas herramientas tienen un tier gratuito, o simplemente ofrecen prueba de 30 días y por lo tanto no te sirven?
@JJ No me llegó el correo del comentario y no lo había visto.
Jenkins está analizado por ser uno de los más utilizados, porque es compatible con lenguajes de programación interpretados (como python), los únicos requisitos que existen son que tenga un plan gratuito y que se permita la gestión en la nube. Jenkins es on-premises y por eso creo que está justificado de manera escrita.
Por el otro lado, TeamCity tiene un plan gratuito pero gestionado on-premises también, que permite realizar 100 configuraciones de despliegue, si no recuerdo mal. El caso es que se busca algo gestionado en la nube, y la versión gratuita de TeamCity también está gestionado on-premises. TeamCity tiene una versión Cloud con un plan de prueba de 14 días que es inviable de usar y luego cuesta 45 dólares al mes
Y las soluciones CI/CD de software propietarios como bamboo de Atlassian o las pipeline de GitLab no tiene sentido analizarlas porque no se utilizan las VCS de estos proveedores
Entonces, se han analizado las herramientas posibles, seleccionando GitHub actions por sus ventajas: la gestión en la nube, tener un plan gratuito, el uso de github como VCS, dejando claro el motivo por el que no se han analizado el resto.
Si no está bien razonado, o si hay algo que he escrito aquí que no está mencionado en la memoria, me disculpo y lo arreglaré en cuanto llegue a mi casa esta tarde
@JJ Se clarifica la elección de GitHub Actions como herramienta de CI, especificando razonadamente el porque no se escogen herramientas como:
Además se añade un párrafo explicando los requisitos que se consideran para la elección de la herramienta
@JJ Se han cambiado las herramientas de CI, eligiendo circleCI para salir de la zona de confort y aprender una herramienta nueva, adicionalmente se mantiene GitHub Actions en caso de agotar los créditos mensuales del plan gratuito de CircleCI
Se completan los siguientes issues:
78. Se añade el capítulo de implementación y las decisiones relativas al uso de github como herramienta de control de versiones y github actions como herramienta de CI.