Multibranch pipeline jobs are failing on git checkout step after update to with the latest versions of pipeline plugins. {code:java} java.lang.NullPointerException at org.jenkinsci.plugins.workflow.job.WorkflowRun.onCheckout(WorkflowRun.java:836) at org.jenkinsci.plugins.workflow.job.WorkflowRun.access$1000(WorkflowRun.java:133) at org.jenkinsci.plugins.workflow.job.WorkflowRun$SCMListenerImpl.onCheckout(WorkflowRun.java:1101) at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:133) at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:91) at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:78) at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Finished: FAILURE {code} Multibranch pipeline job does not fail with Pipeline: SCM Step 2.7 version, next versions (2.8, 2.9) leads to fails with NPE.
Artem Gryshyn I think this is related to JENKINS-57918, but in that case, it only affected the Repo SCM. I have not heard any other reports from Git users, so maybe there is something special about your case? What version of workflow-job are you running so we can see exactly what line in WorkflowRun is throwing the NPE?
Artem Gryshyn Yes, sorry, the artifact id of the plugin is workflow-job, but the name shown to users is Pipeline: Job Plugin. What is the GitHub plugin being configured in the attached screenshot (it doesn't look like GitHub Branch Source)? That plugin should probably be updated so that it writes an empty changelog file when there are no changes instead of leaving the changelog file empty for consistency with other SCMs.
It looks like the plugin shown in the screenshot is the GitHub Integration Plugin (https://plugins.jenkins.io/github-pullrequest), this config.jelly file in particular. Perhaps this is the problematic code in that plugin, it could return a parser that just doesn't do anything instead of null. My fix in workflow-scm-step should work fine for this particular issue though.
Devin Nusbaum yes, it really does. Since I built plugin with your fix, there are no more NPE exceptions. Interesting thing that NPE is only with multibranch pipeline, single pipeline is not affected.
Does your fix going to be implemented and issued with new version of plugin or I have to use my custom built?
[~dnusbaum] yes, it really does. Since I built plugin with your fix, there are no more NPE exceptions. Interesting thing that NPE is only with multibranch pipeline, single pipeline is not affected.
Does your fix going to be implemented and issued with new version of plugin or I have to use my custom built build?
Artem Gryshyn I would like to add some automated tests before I merge the change, but I will try to get a release out with my fix in the next few weeks.