Come dice il titolo, sto cercando di ottenere un lavoro di rilascio automatico su Hudson. È un progetto Maven e tutto il codice è in Git. Manualmente, faccio l'uscita sulla mia macchina personale in questo modo:Impossibile ottenere il rilascio automatico lavorando con Hudson + Git + Maven Release Plugin
git checkout master
mvn -B release:prepare release:perform
Questo funziona perfettamente. Il plug-in di rilascio di Maven spinge correttamente il tag di rilascio nel repository di origine e il successivo commit che esegue il dump della versione sul successivo SNAPSHOT.
Tuttavia, quando eseguo lo stesso lavoro Maven tramite Hudson (sia creando il mio lavoro di "rilascio" o utilizzando lo M2 Release Plugin) non funziona così bene. Il tag di rilascio viene inviato al repository di origine e il rilascio viene trasferito al repository Nexus, ma il successivo commit che esegue il dump della versione sul successivo SNAPSHOT non viene eseguito. Inoltre, il ramo "master" nel repository di origine non viene affatto modificato. Tuttavia, ho cercato nell'area di lavoro di Hudson per il lavoro e la versione è stata aggiornata.
Dopo aver esaminato l'output del lavoro Hudson, sembra che il plug-in Git non esegua effettivamente il checkout "master", ma piuttosto l'ID SHA1. Cioè, se i punti di etichetta ramo "master" di commettere "f6af76f541f1a1719e9835cdb46a183095af6861", Hudson fa
git checkout -f f6af76f541f1a1719e9835cdb46a183095af6861
invece di
git checkout -f master
Di conseguenza, i cambiamenti che il plugin di rilascio Maven sta facendo non sono in realtà su qualsiasi ramo (certamente non su "master") e queste modifiche non arrivano al repository di origine. Funziona con il codice giusto, ma in termini di contabilità, le modifiche sembrano andare perse perché nessuna etichetta di ramo punta a loro.
Qualcuno ha ottenuto che la combinazione Hudson + Git + Maven Release Plugin funzioni correttamente? C'è qualche configurazione aggiuntiva da qualche parte che posso impostare per fare in modo che questo accada? O è un bug nel plugin Hudson Git?
Grazie in anticipo.
Sembra che lo stesso problema sia menzionato in [Jenkins maillist] (http://jenkins.361315.n4.nabble.com/Maven-release-plugin-Git-td2317181.html), in [Hudson maillist] (http://java.net/projects/hudson/lists/users/archive/2011-08/message/135), in JIRA [HUDSON-5856] (http://issues.hudson-ci.org/browse/HUDSON -5856), in [GitHub gist] (https://gist.github.com/1351153). Anche [la spiegazione sul TESTO distaccato] (http://stackoverflow.com/a/5772882/267197) è relativa. –