-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Critical
-
Component/s: ldap-plugin
-
None
After update plugins, We cant init jenkins:Â
The error is:
om.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.security.LDAPSecurityRealm
at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:79)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.DynamicProxyMapper.realClass(DynamicProxyMapper.java:55)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.PackageAliasingMapper.realClass(PackageAliasingMapper.java:88)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.ClassAliasingMapper.realClass(ClassAliasingMapper.java:79)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.ArrayMapper.realClass(ArrayMapper.java:74)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.SecurityMapper.realClass(SecurityMapper.java:71)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at hudson.util.XStream2$CompatibilityMapper.realClass(XStream2.java:379)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at hudson.util.xstream.MapperDelegate.realClass(MapperDelegate.java:43)
at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
at com.thoughtworks.xstream.mapper.CachingMapper.realClass(CachingMapper.java:48)
at hudson.util.RobustReflectionConverter.determineType(RobustReflectionConverter.java:458)
at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:324)
Caused: jenkins.util.xstream.CriticalXStreamException: hudson.security.LDAPSecurityRealm : hudson.security.LDAPSecurityRealm
---- Debugging information ----
message : hudson.security.LDAPSecurityRealm
cause-exception : com.thoughtworks.xstream.mapper.CannotResolveClassException
cause-message : hudson.security.LDAPSecurityRealm
class : hudson.model.Hudson
required-type : hudson.model.Hudson
converter-type : hudson.util.RobustReflectionConverter
path : /hudson/securityRealm
line number : 17
version : not available
-------------------------------
at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:353)
at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:267)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)
at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)
at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1189)
at hudson.util.XStream2.unmarshal(XStream2.java:161)
at hudson.util.XStream2.unmarshal(XStream2.java:132)
at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173)
at hudson.XmlFile.unmarshal(XmlFile.java:180)
Caused: java.io.IOException: Unable to read /var/jenkins_home/config.xml
at hudson.XmlFile.unmarshal(XmlFile.java:183)
at hudson.XmlFile.unmarshal(XmlFile.java:163)
at jenkins.model.Jenkins.loadConfig(Jenkins.java:3118)
at jenkins.model.Jenkins.access$1200(Jenkins.java:320)
at jenkins.model.Jenkins$13.run(Jenkins.java:3219)
at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:296)
at jenkins.model.Jenkins$5.runTask(Jenkins.java:1133)
at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214)
at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:59)
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)
Caused: org.jvnet.hudson.reactor.ReactorException
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.java:282)
at jenkins.InitReactorRunner.run(InitReactorRunner.java:50)
at jenkins.model.Jenkins.executeReactor(Jenkins.java:1166)
at jenkins.model.Jenkins.<init>(Jenkins.java:966)
at hudson.model.Hudson.<init>(Hudson.java:85)
at hudson.model.Hudson.<init>(Hudson.java:81)
at hudson.WebAppMain$3.run(WebAppMain.java:233)
Caused: hudson.util.HudsonFailedToLoad
at hudson.WebAppMain$3.run(WebAppMain.java:250)
Â
My config xml is
Â
- cat /var/jenkins_home/config.xml
<?xml version='1.1' encoding='UTF-8'?>
<hudson>
 <disabledAdministrativeMonitors/>
 <version>2.222.4</version>
 <installStateName>RUNNING</installStateName>
 <numExecutors>2</numExecutors>
 <mode>NORMAL</mode>
 <useSecurity>true</useSecurity>
 <authorizationStrategy class="hudson.security.ProjectMatrixAuthorizationStrategy">
  <permission>hudson.model.Hudson.Administer:jenkins-admin</permission>
  <permission>hudson.model.Hudson.Read:jenkins-user</permission>
  <permission>hudson.model.Item.Build:jenkins-user</permission>
  <permission>hudson.model.Item.Cancel:jenkins-user</permission>
  <permission>hudson.model.Item.Read:jenkins-user</permission>
 </authorizationStrategy>
 <securityRealm class="hudson.security.LDAPSecurityRealm" plugin="ldap@1.20">
  <disableMailAddressResolver>false</disableMailAddressResolver>
  <configurations>
   <jenkins.security.plugins.ldap.LDAPConfiguration>
    <server>xxx</server>
    <rootDN>dc=finametrix,dc=com</rootDN>
    <inhibitInferRootDN>false</inhibitInferRootDN>
    <userSearchBase>ou=users</userSearchBase>
    <userSearch>uid={0}</userSearch>
    <groupSearchBase>ou=groups</groupSearchBase>
    <groupMembershipStrategy class="jenkins.security.plugins.ldap.FromGroupSearchLDAPGroupMembershipStrategy">
     <filter>uniqueMember={0}</filter>
    </groupMembershipStrategy>
    <managerDN>cn=readonly,dc=finametrix,dc=com</managerDN>
    <managerPasswordSecret>{mysecret}</managerPasswordSecret>
    <displayNameAttributeName>displayname</displayNameAttributeName>
    <mailAddressAttributeName>mail</mailAddressAttributeName>
    <ignoreIfUnavailable>false</ignoreIfUnavailable>
   </jenkins.security.plugins.ldap.LDAPConfiguration>
  </configurations>
  <userIdStrategy class="jenkins.model.IdStrategy$CaseInsensitive"/>
  <groupIdStrategy class="jenkins.model.IdStrategy$CaseInsensitive"/>
  <disableRolePrefixing>true</disableRolePrefixing>
 </securityRealm>
 <disableRememberMe>false</disableRememberMe>
 <projectNamingStrategy class="jenkins.model.ProjectNamingStrategy$DefaultProjectNamingStrategy"/>
 <workspaceDir>${JENKINS_HOME}/workspace/${ITEM_FULL_NAME}</workspaceDir>
 <buildsDir>${ITEM_ROOTDIR}/builds</buildsDir>
 <markupFormatter class="hudson.markup.EscapedMarkupFormatter"/>
 <jdks/>
 <viewsTabBar class="hudson.views.DefaultViewsTabBar"/>
 <myViewsTabBar class="hudson.views.DefaultMyViewsTabBar"/>
 <clouds>
  <org.csanchez.jenkins.plugins.kubernetes.KubernetesCloud plugin="kubernetes@1.21.1">
   <name>kubernetes</name>
   <defaultsProviderTemplate>ubuntu</defaultsProviderTemplate>
   <templates>
    <org.csanchez.jenkins.plugins.kubernetes.PodTemplate>
     <inheritFrom></inheritFrom>
     <name>ubuntu</name>
     <namespace></namespace>
     <privileged>false</privileged>
     <capOnlyOnAlivePods>false</capOnlyOnAlivePods>
     <alwaysPullImage>false</alwaysPullImage>
     <instanceCap>2147483647</instanceCap>
     <slaveConnectTimeout>100</slaveConnectTimeout>
     <idleMinutes>0</idleMinutes>
     <activeDeadlineSeconds>600</activeDeadlineSeconds>
     <label></label>
     <nodeSelector></nodeSelector>
     <nodeUsageMode>EXCLUSIVE</nodeUsageMode>
     <hostNetwork>false</hostNetwork>
     <workspaceVolume class="org.csanchez.jenkins.plugins.kubernetes.volumes.workspace.EmptyDirWorkspaceVolume">
      <memory>false</memory>
     </workspaceVolume>
     <volumes/>
     <containers>
      <org.csanchez.jenkins.plugins.kubernetes.ContainerTemplate>
       <name>ubuntu</name>
       <image>docker.finametrix.com/ci/ubuntu:latest</image>
       <privileged>false</privileged>
       <alwaysPullImage>false</alwaysPullImage>
       <workingDir>/home/jenkins/agent</workingDir>
       <command>/bin/sh -c</command>
       <args>cat</args>
       <ttyEnabled>true</ttyEnabled>
       <resourceRequestCpu></resourceRequestCpu>
       <resourceRequestMemory></resourceRequestMemory>
       <resourceLimitCpu></resourceLimitCpu>
       <resourceLimitMemory></resourceLimitMemory>
       <envVars>
        <org.csanchez.jenkins.plugins.kubernetes.model.KeyValueEnvVar>
         <key>DOCKER_HOST</key>
         <value>localhost</value>
        </org.csanchez.jenkins.plugins.kubernetes.model.KeyValueEnvVar>
       </envVars>
       <ports/>
       <livenessProbe>
        <execArgs></execArgs>
        <timeoutSeconds>0</timeoutSeconds>
        <initialDelaySeconds>0</initialDelaySeconds>
        <failureThreshold>0</failureThreshold>
        <periodSeconds>0</periodSeconds>
        <successThreshold>0</successThreshold>
       </livenessProbe>
      </org.csanchez.jenkins.plugins.kubernetes.ContainerTemplate>
      <org.csanchez.jenkins.plugins.kubernetes.ContainerTemplate>
       <name>docker</name>
       <image>docker:18.09-dind</image>
       <privileged>true</privileged>
       <alwaysPullImage>false</alwaysPullImage>
       <workingDir>/home/jenkins/agent</workingDir>
       <command></command>
       <args></args>
       <ttyEnabled>false</ttyEnabled>
       <resourceRequestCpu></resourceRequestCpu>
       <resourceRequestMemory></resourceRequestMemory>
       <resourceLimitCpu></resourceLimitCpu>
       <resourceLimitMemory></resourceLimitMemory>
       <envVars/>
       <ports/>
       <livenessProbe>
        <execArgs></execArgs>
        <timeoutSeconds>0</timeoutSeconds>
        <initialDelaySeconds>0</initialDelaySeconds>
        <failureThreshold>0</failureThreshold>
        <periodSeconds>0</periodSeconds>
        <successThreshold>0</successThreshold>
       </livenessProbe>
      </org.csanchez.jenkins.plugins.kubernetes.ContainerTemplate>
     </containers>
     <envVars/>
     <annotations/>
     <imagePullSecrets>
      <org.csanchez.jenkins.plugins.kubernetes.PodImagePullSecret>
       <name>regcred</name>
      </org.csanchez.jenkins.plugins.kubernetes.PodImagePullSecret>
     </imagePullSecrets>
     <nodeProperties/>
     <yamlMergeStrategy class="org.csanchez.jenkins.plugins.kubernetes.pod.yaml.Overrides"/>
     <showRawYaml>true</showRawYaml>
     <podRetention class="org.csanchez.jenkins.plugins.kubernetes.pod.retention.Default"/>
    </org.csanchez.jenkins.plugins.kubernetes.PodTemplate>
   </templates>
   <serverUrl>https://xxx</serverUrl>
   <serverCertificate>----BEGIN CERTIFICATE----
----END CERTIFICATE----</serverCertificate>
   <skipTlsVerify>false</skipTlsVerify>
   <addMasterProxyEnvVars>false</addMasterProxyEnvVars>
   <capOnlyOnAlivePods>false</capOnlyOnAlivePods>
   <directConnection>false</directConnection>
   <jenkinsUrl>http:/xxx</jenkinsUrl>
   <credentialsId>k8s-jenkins-agents-sa-token</credentialsId>
   <containerCap>4</containerCap>
   <retentionTimeout>5</retentionTimeout>
   <connectTimeout>30</connectTimeout>
   <readTimeout>30</readTimeout>
   <podLabels>
    <org.csanchez.jenkins.plugins.kubernetes.PodLabel>
     <key>jenkins</key>
     <value>slave</value>
    </org.csanchez.jenkins.plugins.kubernetes.PodLabel>
   </podLabels>
   <usageRestricted>false</usageRestricted>
   <maxRequestsPerHost>32</maxRequestsPerHost>
   <waitForPodSec>1200</waitForPodSec>
   <podRetention class="org.csanchez.jenkins.plugins.kubernetes.pod.retention.Never"/>
  </org.csanchez.jenkins.plugins.kubernetes.KubernetesCloud>
 </clouds>
 <quietPeriod>0</quietPeriod>
 <scmCheckoutRetryCount>0</scmCheckoutRetryCount>
 <views>
  <hudson.model.AllView>
   <owner class="hudson" reference="../../.."/>
   <name>all</name>
   <filterExecutors>false</filterExecutors>
   <filterQueue>false</filterQueue>
   <properties class="hudson.model.View$PropertyList"/>
  </hudson.model.AllView>
 </views>
 <primaryView>all</primaryView>
 <slaveAgentPort>50000</slaveAgentPort>
 <label></label>
 <crumbIssuer class="hudson.security.csrf.DefaultCrumbIssuer">
  <excludeClientIPFromCrumb>false</excludeClientIPFromCrumb>
 </crumbIssuer>
 <nodeProperties/>
 <globalNodeProperties/>
 <noUsageStatistics>true</noUsageStatistics>
</hudson>#
Â
Thanks