Mam potok budujący Jenkins stworzony przy użyciu wtyczki workflow. Na początku rurociąg biegnie kompilacji haustem wewnątrz pojemnika Döcker a następnie archiwizuje wyniki badań, przy użyciu następującego koduZatrzymaj potok, gdy scena jest niestabilna.
step([$class: 'JUnitResultArchiver', testResults: 'build/test-results/*.xml'])
W kolejnych krokach Pakuję się artefakty i wysłać je do repozytorium binarnego.
Gdy testy jednostkowe nie przechodzą, Jenkins rozumie, że kompozycja jest niestabilna i zaznacza ją na żółto. Jednak nadal trwa wraz z kolejnymi etapami w przygotowaniu. Czy istnieje jakiś sposób, aby rurociąg zatrzymał się, gdy testy jednostkowe zawiodły?
Jak dzwonisz Gradle? Używając kroku "sh"? – amuniz
Ups, moje złe. Niepowodzenie potoku to budowanie z przodu za pomocą Gulp/node. Jest uruchamiany przez sh w kontenerze dokowania. Stopień budowania backendu poprawnie obsługuje tę sytuację. – Vlad
Ok. Potem nie ma nic do zrobienia po stronie Jenkinsa, ale po stronie Gulpa. Wywołanie polecenia CLI w gulp musi zwrócić odpowiednią wartość błędu, aby krok 'sh' nie działał poprawnie - domyślam się, że faktycznie zwraca 0, nawet jeśli nie kończy się pomyślnie. – amuniz