2016-10-20 11 views
5

Jenkins rurociąg wtyczki jak prowadzić równoległe zadaniaJenkins rurociąg plugin jak prowadzić równoległe zadania

Jestem początkujący w Jenkins, chcę uruchomić kilka zadań równolegle na dostępnych węzłów podrzędnych Jenkins wykorzystaniem wtyczki rurociągu.

Zainstalowałem wtyczkę potoku i dodałem poniżej w sekcji skryptów wbudowanych potoku.

grovvy script : parallel firstBranch: { 
node('master'){ 
echo 'firstBranch' 
} 
}, secondBranch: { 
node('slave1'){ 
echo 'secondBranch' 
} 
} 

UWAGA: master i slave1 są moje węzły

Jakie są firstBranch i secondBranch idealnie ????

wyjście konsoli:

kroki użytkownika anonimowego [rurociągu] równoległe [rurociągu] [firstBranch] {(dział: firstBranch) [rurociągu] [secondBranch] {(dział: secondBranch) [rurociągu] [firstBranch] węzeł [firstBranch] Praca na suwaku w /scratch/gnithyan/.hudson/workspace/pipeline_test
[rurociągu] [secondBranch] węzeł
[rurociągu] [secondBranch] // węzeł
[rurociągu] [secondBranch]}
[secondBranch] Niepowodzenie w dziale secondBranch
[rurociągu] [firstBranch] {
[rurociągu] [firstBranch] echo
[firstBranch] firstBranch
[rurociągu] [firstBranch]}
[rurociągu] [firstBranch] // węzeł
[rurociągu] [firstBranch]}
[rurociągu] // równolegle
[rurociągu] Koniec rurociągu

java.lang.IllegalStateException: nie rozpoczęcie zapisywania logi do zakończonego węzła zakończonego węzłem org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode [id = 8] o org.jenkinsci.plugins.workflow.support.actions.LogActionImpl. (LogActionImpl.java:110) at org.jenkinsci.plugins.workflow.support.actions.LogActionImpl.stream (LogActionImpl.java:81) w org.jenkinsci.plugins.workflow.support.DefaultStepContext.get (DefaultStepContext.java:73) w org .jenkinsci.plugins.workflow.steps.StepDescriptor.checkContextAvailability (StepDescriptor.java:252) at org.jenkinsci.plugins.workflow.cps.DSL.invokeStep (DSL.java:179) at org.jenkinsci.plugins.workflow .cps.DSL.invokeMethod (DSL.java:126) at org.jenkin sci.plugins.workflow.cps.CpsScript.invokeMethod (CpsScript.java:108) w groovy.lang.GroovyObject $ invokeMethod $ 0.call (Nieznane źródło) pod adresem org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall (CallSiteArray.java:48)

+1

proszę sformatować kod (usuwania zawartości HTML) – Jayan

+0

właśnie rozpoczynający się to na uprzednio działający skrypt potoku w/najnowszej wersji Jenkinsa. Nie zorientowałem się jeszcze, co oznacza zrzut stosu :-( – kenyee

+0

W poniższym skrypcie grovvy 1. czym jest firstBranch i secondBranch? 2.dla master i slave1 powinny być zawsze nazwą, jeśli dostępne są węzły na Jenkins ?? grovvy skryptu: równolegle firstBranch: { węzła ('master') { ECHO firstBranch ' } } secondBranch { węzła ('slave1') { echa 'secondBranch' } } –

Odpowiedz

5

Mam ten sam problem.Być może znalazłem zależną wtyczkę: https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Supporting+APIs+Plugin Patrz uwaga do wersji 2.10 Regresja w logowaniu z pewnymi krokami wewnątrz równoległego w 2.9.

Tak Aktualizacja wtyczki działa!

+0

Aktualizacja interfejsów API obsługujących potoki Obsługa wtyczki do wersji 2.10. Dziękujemy! Wszystkie –

+0

Tak, przepraszam za to. –

0

Dla mnie wygląda idealnie. Moja dostawa została zdefiniowana jako rurociąg i działała dobrze. Dzisiaj, po aktualizacji Jenkinsa z 2.25 na 2.26, dostałem ten sam błąd. Przejście na wersję 2.25 nie pomogło, być może dlatego, że zaktualizowałem także wtyczki :(