/ / Jak wykonać sparametryzowany zdalny wyzwalacz z zadania po kompilacji? - jenkins, jenkins-plugins

Jak wykonać sparametryzowany zdalny wyzwalacz z zadania budowania postu? - jenkins, jenkins-plugins

Mam pracę Jenkins z zadaniem post build. Zadanie po kompilacji jest wyrażeniem regularnym. Jeśli warunek wyrażenia regularnego jest spełniony, chcę wykonać sparametryzowany zdalny wyzwalacz, aby wyzwolić kolejną kompilację Jenkinsa. Z zadanie po kompilacji Widzę, że warunek wyrażenia regularnego może wywołać skrypt. Czy to możliwe, aby uruchomiło to sparametryzowany zdalny wyzwalacz?

Zasadniczo chcę wykonać drugą kompilację tylko wtedy, gdy warunek wyrażenia regularnego jest spełniony od pierwszej kompilacji. Nie chcę mieć skryptu, który wykonuje CURL, aby go osiągnąć. Czy jest jakiś inny sposób?

Odpowiedzi:

0 dla odpowiedzi № 1

Osiągnąłem to, używając Wtyczka Groovy po kompilacji. Wybierz go w obszarze Działania po kompilacji zTwoja konfiguracja pracy w Jenkins. Mój groovy skrypt wykonuje regex w dzienniku kompilacji mojego pierwotnego zadania. Jeśli warunek wyrażenia regularnego jest spełniony, uruchamia nową kompilację.

Poniżej znajduje się przykład z wtyczki Groovy:

def job = Hudson.instance.getJob("MyJobName")
def anotherBuild
try {
def params = [
new StringParameterValue("FOO", foo),
]
def future = job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println "Waiting for the completion of " + HyperlinkNote.encodeTo("/" + job.url, job.fullDisplayName)
anotherBuild = future.get()
} catch (CancellationException x) {
throw new AbortException("${job.fullDisplayName} aborted.")
}