Closed linesta-iti closed 1 year ago
Primera tarea completada. La reabro para continuar con el resto de puntos.
Después de la conversación con @mgalbis y @auxicarlos, acordamos realizar a continuación la 4ª tarea.
Revisando el estado de la publicación de los dockers, y con la puntualización de @linesta-iti, se comprueba que actualmente ya se está publicando una imagen docker con el tag de la versión del pom.xml y otro con lastest, cuando se hace un tag en la rama main.
Sin embargo, y con el objetivo de evitar tener que cambiar manualmente la versión del pom.xml antes de hacer el tag de main, vamos a revisar si cuando tageamos main, podemos aprovechar el nombre del tag para actualizar la versión del fichero pom.xml en el repositorio y para publicar la imagen docker con esa versión.
En relación del punto 4 de la tarea principal, después de la reunión, acordamos que al hacer el tag, comprobar que el nombre del tag es igual nombre del pom, se avisa si no son iguales para que la persona que esté haciendo el tag revise el pom para que coincidan. La versión del pom se tiene que heredar y se comprobará la versión del pom que está en la raíz.
Para implementar el punto 2, de la tarea principal, se hará una PoC en el plugin de kukumo-rest. El enfoque será crear distintos jobs por plugin y condicionar su ejecución por filtrado de path.
Se deberían modificar las Github Actions que disparan las pipelines para conseguir lo siguiente:
Una vez se disponga del token de publicación en Maven Central, realizar la misma tarea de publicación del punto anterior para cada uno de los artefactos Java (.jar). Tener en cuenta que si se intenta republicar una versión ya existente de un jar, es posible que el proceso finalice con error, habrá que intentar tenerlo en cuenta para seguir con el siguiente artefacto.
(esto se podría refinar más aún en el futuro, pero para simplificar la tarea de momento valdrá así)
Nótese que quizá alguno de estos requisitos pueda implicar modificar no solo las propias Github Actions sino quizá la propia estructura multi-módulo Maven que existe actualmente.