Witajcie,
Mam zintegrowaną GITEA poprzez webhooka z JENKINSEM. Sęk w tym, że przy scalaniu PR w gitea jest tam taka automatyczna opcja usuwania brancha, który poprzez PR jest scalany mastera.
Dla przykładu mamy origin/master
wychodzimy branchem -> feature/#123_zmiana
.
Master jest w chroniony przed commitami i można dograć zmiany tylko poprzez PR (i CR) zatem chcąc zmiany z feature/#123_zmiana
wgrać na master
(aby uniknąć konfliktów itp) wychodzimy świeżym branchem z master
a i nazywamy go releaseMaster/#123_zmiana
.
Następnie domergowujemy feature/#123_zmiana
do releaseMaster/#123_zmiana
W gitea robimy PR z releaseMaster/#123_zmiana
do master
.
W tym momencie gitea wysyła webhooka do jenkinsa (REST JSON) aby ten zweryfikował poprawność kodu. W przypadku powodzenia odkłada w gitea komentarz, w przypadku błędu wrzuca link do konsoli jenkinsowej z błędem jako komentarz w gitea.
Do tego momentu wszystko działa dobrze.
Problem zaczyna się gdy PR przejdzie CR i chcemy go scalić do master. Ponieważ opcja "Usuń branch" jest domyślnie zaznaczona gitea po scaleniu wysyła webhooka, jenkins to przetwarza już na gałęzi master
i odkłada komentarz. Natomiast zaraz po wysłaniu tego webhooka gitea usuwa branch releaseMaster/#123_zmiana
(z remote) i wysyła drugiego webhooka do jenkinsa. Ten próbuje zrobić
git checkout releaseMaster/#123_zmiana
i dostaję błąd.
W gitea odnośnie eventów na webhook mam tylko takie opcje:
a tak naprawdę po scaleniu PR nie potrzebuję już wysyłać żadnego webhooka. Ktoś ma pomysł jak to zrobić?