Required Data Subversion Plugin
This article describes how to collect the minimum data that will be needed to debug an issue with the Subversion Plugin.
If the required data is bigger than 50 MB you will not be able to use ZenDesk to upload all the information. On this case we would like to encourage you to use our upload service in order to attach all the required information.
Environment
-
CloudBees CI (CloudBees Core) on modern cloud platforms - Managed controller (CORE-MM)
-
CloudBees CI (CloudBees Core) on traditional platforms - Client controller (CORE-CM)
-
CloudBees Jenkins Enterprise - Managed controller (CJE-MM)
Required Data check list
[ ] Support bundle with SVNKit logs activated [ ] Agent name [ ] Configuration paths used by the plugin [ ] Subversion configuration files
Support bundle
SVNKit logs activation
Before reproducing the issue, create a dedicated logger.
The classes you need to add to the logger are:
-
svnkit
-
svnkit-network
-
svnkit-wc
-
hudson.scm.SubversionSCM
Once activated, please reproduce your test case.
Agent name
The name of the agent on which the Subversion Plugin fails. You can find it under Manage Jenkins -> Manage Nodes
Configuration paths used by the plugin
In order to retrieve the configuration directory used by the Subversion Plugin, you’ll need to run the following script by going to /script
:
-
If the issue is happening on the controller:
println "Default Config Dir: ${org.tmatesoft.svn.core.wc.SVNWCUtil.getDefaultConfigurationDirectory()}" println "System Config Dir: ${org.tmatesoft.svn.core.internal.wc.SVNFileUtil.getSystemConfigurationDirectory()}"
-
If the issue is happening on an agent (make sur to replace
'AGENT_NAME'
):
import hudson.util.RemotingDiagnostics import jenkins.model.Jenkins String agent_name = 'AGENT_NAME' groovy_script = ''' println "Default Config Dir: ${org.tmatesoft.svn.core.wc.SVNWCUtil.getDefaultConfigurationDirectory()}" println "System Config Dir: ${org.tmatesoft.svn.core.internal.wc.SVNFileUtil.getSystemConfigurationDirectory()}" '''.trim() String result Jenkins.instance.slaves.find { agent -> agent.name == agent_name }.with { agent -> result = RemotingDiagnostics.executeGroovy(groovy_script, agent.channel) } println result
Output of the script should be of the form:
Default Config Dir: XXX System Config Dir: YYY
Make sure to copy paste this output on the ticket.