The "hello world" example Pipeline fails with Jenkins 2.463 and OpenText Application Automation Tools 24.2. Steps that I took:
- Create a plugins.txt
file that lists the plugins to be installed, including most recent releases of Pipeline plugins and OpenText Application Automation Tools 24.2
- Create a run-jenkins.sh
shell script that downloads Jenkins 2.463 and the plugins listed in the plugins.txt
file
- Run the run-jenkins.sh
shell script on a Linux computer with Java 17 or Java 21 and complete the setup wizard by creating a new user and choosing to install no additional plugins
- Create a Pipeline job using the "Hello world" example that is available from the Pipeline editor dropdown menu
- Run the Pipeline job and confirm that it fails
The "Hello world" example Pipeline is:
pipeline {
agent any
stages {
stage('Hello') {
steps {
echo 'Hello World'
}
}
}
}
The failure message displayed in the Jenkins log when starting is:
2024-06-28 11:19:42.918+0000 [id=42] WARNING hudson.ExtensionFinder$Sezpoz#scout: Failed to scout com.microfocus.application.automation.tools.octane.actions.Webhooks
java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at jenkins.util.URLClassLoader2.findClass(URLClassLoader2.java:64)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
Caused: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory
at PluginClassLoader for hp-application-automation-tools-plugin
The failure message displayed in the console output of the job when the Pipeline runs is:
java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory [in thread "Handling GET /job/example-pipelibne/ from 172.16.16.156 : Jetty (winstone)-29 Job/index.jelly WorkflowJob/sidepanel.jelly Actionable/actions.jelly"]
at PluginClassLoader for hp-application-automation-tools-plugin at PluginClassLoader for hp-application-automation-tools-plugin at PluginClassLoader for hp-application-automation-tools-plugin at PluginClassLoader for hp-application-automation-tools-plugin
The failure message in the Jenkins log when a Pipeline job opened from the "Configure" link on the sidebar of the job page is:
2024-06-28 11:27:09.989+0000 [id=21] WARNING h.ExpressionFactory2$JexlExpression#evaluate: Caught exception evaluating: attrs.actions ?: it.allActions ?: it.actions in /job/example-pipelibne/. Reason: java.lang.reflect.InvocationTargetException
java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory [in thread "Handling GET /job/example-pipelibne/ from 172.16.16.156 : Jetty (winstone)-29 Job/index.jelly WorkflowJob/sidepanel.jelly Actionable/actions.jelly"]
at PluginClassLoader for hp-application-automation-tools-plugin at PluginClassLoader for hp-application-automation-tools-pluginCaused: java.lang.NoClassDefFoundError: Could not initialize class com.microfocus.application.automation.tools.octane.configuration.JobConfigurationProxy
at PluginClassLoader for hp-application-automation-tools-plugin at PluginClassLoader for hp-application-automation-tools-plugin at PluginClassLoader for hp-application-automation-tools-plugin
OpenText Application Automation Tools 24.2 and earlier depend on Apache Commons File Upload 1.5. Apache Commons File Upload 1.5 has been replaced in Jenkins 2.459 by Apache Commons File Upload 2. In order to upgrade from Spring Security 5.x (end of life 31 Aug 2024) to Spring Security 6.x, Jenkins must upgrade from Apache Commons File Upload 1.5 to Apache Commons File Upload 2.
The workaround is to use an earlier Jenkins version (2.458, 2.452.2) or uninstall the OpenText Application Automation Tools plugin.
The "hello world" example Pipeline fails with Jenkins 2.463 and OpenText Application Automation Tools 24.2. Steps that I took:
The "Hello world" example Pipeline is:
The failure message displayed in the Jenkins log when starting is:
The failure message displayed in the console output of the job when the Pipeline runs is:
The failure message in the Jenkins log when a Pipeline job opened from the "Configure" link on the sidebar of the job page is:
OpenText Application Automation Tools 24.2 and earlier depend on Apache Commons File Upload 1.5. Apache Commons File Upload 1.5 has been replaced in Jenkins 2.459 by Apache Commons File Upload 2. In order to upgrade from Spring Security 5.x (end of life 31 Aug 2024) to Spring Security 6.x, Jenkins must upgrade from Apache Commons File Upload 1.5 to Apache Commons File Upload 2.
The workaround is to use an earlier Jenkins version (2.458, 2.452.2) or uninstall the OpenText Application Automation Tools plugin.