Плагин Claim не появляется, когда умирает Jenkis (Scripted Pipeline) - PullRequest
0 голосов
/ 10 января 2019

Я использую Scripted Pipeline для запуска заданий. Скриптовый конвейер не включает задачу посткомпиляции так же, как сборочный поток или декларативный конвейер. Поэтому мне нужно сделать что-то вроде этого

try{
    // execute builds
}
catch(Exception e){
    // set pipeline result
}
finally {
    step([$class: 'ClaimPublisher']);
}

Проблема появляется, когда Дженкинс внезапно выключается. По какой-то причине он не выполняет код на шаге finnaly, поэтому, когда Дженкинс снова работает, конвейер, потерпевший неудачу, не может быть востребован.

Даже мысленный конвейер «продолжается», в конце концов блок не выполняется.

Вход:

Resuming build after Jenkins restart
an exception which occurred:
    in object of type org.jenkinsci.plugins.workflow.cps.FlowHead
    in field org.jenkinsci.plugins.workflow.cps.CpsThread.head

Caused: java.lang.IllegalStateException: FlowHead loading problem at deserialize: Null FlowHead with id 45 in execution
    at org.jenkinsci.plugins.workflow.cps.FlowHead.readResolve(FlowHead.java:196)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

Здесь есть еще один способ включить плагин претензий. Могу ли я сделать что-то еще в коде?

ИНФОРМАЦИЯ: Плагин утверждений можно установить только после установки результата сборки

...