Somewhere between versions 1.102 and 2.3.4 xunit introduced a not-backward-compatible change to reading its config.
Steps to reproduce:
Install xunit 1.102.
Add xunit to a job config, including a tool (such a GoogleTest).
Upgrade to xunit 2.3.4.
Run the job.
Expected Result
Job succeeds.
Actual Result
Job fails with:
ERROR: Build step failed with exception
java.lang.IllegalArgumentException: The tools section is required.
at org.jenkinsci.plugins.xunit.XUnitProcessor.<init>(XUnitProcessor.java:141)
at org.jenkinsci.plugins.xunit.XUnitPublisher.perform(XUnitPublisher.java:170)
at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:81)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:690)
at hudson.model.Build$BuildExecution.post2(Build.java:186)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:635)
at hudson.model.Run.execute(Run.java:1835)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:429)
Build step 'Publish xUnit test result report' marked build as failure
Yes, version 2.x is not compatible with 1.x. I had mark in the pom.xml 2.0.3 but maybe after refactoring I delete setting in 2.3.5 version for mistake. I will re add in 2.3.6.
Do you mean tranform the config.xml of a job 1.x to a job 2.x using an XSLT? If you mean that than yes why not. You should create your XSLT, stop jenkins, write a script to collect all jenkins job config.xml and perform the XLST transformation using some tools.