• Icon: Bug Bug
    • Resolution: Done
    • Icon: Minor Minor
    • p4-plugin
    • Jenkins: 2.332.2
      p4 plugin: 1.12.2
      email-ext: 2.88

      I am building a Jenkins docker container and during my docker build I am running:

       

      RUN /usr/local/bin/install-plugins.sh < /usr/share/jenkins/ref/plugins.txt 

       

      The plugins.txt contains these two lines: 

       

      email-ext:latest
      p4:latest

       

      This works good. No errors 

      However when I start my docker container to run I get this error:

       

      WARNING    h.ExtensionFinder$GuiceFinder$FaultTolerantScope$1#error: Failed to instantiate Key[type=jenkins.telemetry.Correlator, annotation=[none]]; skipping this component
      com.google.inject.ProvisionException: Unable to provision, see the following errors:
      1) [Guice/CanNotProxyClass]: Tried proxying Correlator to support a circular dependency, but it is not an interface.
      Learn more:
        https://github.com/google/guice/wiki/CAN_NOT_PROXY_CLASS
      1 error
      ======================
      Full classname legend:
      ======================
      Correlator: "jenkins.telemetry.Correlator"
      ========================
      End of classname legend:
      ========================
          at com.google.inject.internal.InternalProvisionException.toProvisionException(InternalProvisionException.java:251)
          at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:43)
          at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:169)
          at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:444)
          at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:45)
          at com.google.inject.internal.InjectorImpl$1.get(InjectorImpl.java:1100)
          at hudson.ExtensionFinder$GuiceFinder._find(ExtensionFinder.java:402)
          at hudson.ExtensionFinder$GuiceFinder.find(ExtensionFinder.java:393)
          at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:358)
          at hudson.ExtensionList.load(ExtensionList.java:384)
          at hudson.ExtensionList.ensureLoaded(ExtensionList.java:320)
          at hudson.ExtensionList.iterator(ExtensionList.java:172)
          at jenkins.model.Jenkins.getDescriptor(Jenkins.java:1612)
          at org.jenkinsci.plugins.p4.ConfigurationListener.onChange(ConfigurationListener.java:31)
          at hudson.model.listeners.SaveableListener.fireOnChange(SaveableListener.java:82)
          at hudson.model.Descriptor.save(Descriptor.java:901)
          at jenkins.telemetry.Correlator.<init>(Correlator.java:52)
          at jenkins.telemetry.Correlator$$FastClassByGuice$$328435413.GUICE$TRAMPOLINE(<generated>)
          at jenkins.telemetry.Correlator$$FastClassByGuice$$328435413.apply(<generated>)
          at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:82)
          at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:114)
          at com.google.inject.internal.ConstructorInjector.access$000(ConstructorInjector.java:33)
          at com.google.inject.internal.ConstructorInjector$1.call(ConstructorInjector.java:98)
          at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:109)
          at hudson.ExtensionFinder$GuiceFinder$SezpozModule.onProvision(ExtensionFinder.java:568)
          at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:117)
          at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:66)
          at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:93)
          at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:296)
          at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
          at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:169)
          at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:444)
          at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:45)
          at com.google.inject.internal.InjectorImpl$1.get(InjectorImpl.java:1100)
          at hudson.ExtensionFinder$GuiceFinder._find(ExtensionFinder.java:402)
          at hudson.ExtensionFinder$GuiceFinder.find(ExtensionFinder.java:393)
          at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:358)
          at hudson.ExtensionList.load(ExtensionList.java:384)
          at hudson.ExtensionList.ensureLoaded(ExtensionList.java:320)
          at hudson.ExtensionList.iterator(ExtensionList.java:172)
          at hudson.diagnosis.NullIdDescriptorMonitor.verify(NullIdDescriptorMonitor.java:72)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
          at java.base/java.lang.reflect.Method.invoke(Unknown Source)
          at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:109)
          at hudson.init.TaskMethodFinder$TaskImpl.run(TaskMethodFinder.java:185)
          at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:305)
          at jenkins.model.Jenkins$5.runTask(Jenkins.java:1156)
          at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:222)
          at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:121)
          at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:68)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          at java.base/java.lang.Thread.run(Unknown Source)
      

      It looks like it goes through :

      org.jenkinsci.plugins.p4.ConfigurationListener.onChange(ConfigurationListener.java:31)

      This only happens when I have the p4 plugin installed. I have tried removing the p4 plugin and add other plugins but no other plugin throws this.

          [JENKINS-68378] p4 throw ProvisionException exception

          Karl Wirth added a comment -

          Hi orre 

          I'm new to Jenkins in Docker containers so I tried breaking this down into seperate steps:

          docker run -p 8080:8080 -p 50000:50000 --restart always jenkins/jenkins:lts-jdk11 

          Then open the Docker shell:

          docker exec -u 0 -it cbb271109ff3 /bin/bash 

          and:

          echo p4:latest>/tmp/f
          usr/local/bin/install-plugins.sh < /tmp/f 

          It then reports:

          WARN: install-plugins.sh is deprecated, please switch to jenkins-plugin-cli
          Creating initial locks...
          Analyzing war /usr/share/jenkins/jenkins.war...
          Registering preinstalled plugins...
          Using version-specific update center: https://updates.jenkins.io/dynamic-2.332/...
          Downloading plugins...
          Downloading plugin: p4 from https://updates.jenkins.io/dynamic-2.332//latest/p4.hpi
           > p4 depends on workflow-api:2.27,workflow-multibranch:2.16,workflow-scm-step:2.6,workflow-step-api:2.14,command-launcher:1.2,credentials:2.1.16,mailer:1.21;resolution:=optional,matrix-project:1.13,multiple-scms:0.6;resolution:=optional,scm-api:2.2.7,script-security:1.44,structs:1.14 

          then at the end:

          Installed plugins:
          ace-editor:1.1
          bootstrap4-api:4.6.0-4
          bootstrap5-api:5.1.3-6
          branch-api:2.1046.v0ca_37783ecc5
          caffeine-api:2.9.3-65.v6a_47d0f4d1fe
          checks-api:1.7.3
          cloudbees-folder:6.714.v79e858ef76a_2
          command-launcher:81.v9c2cb_cb_db_392
          credentials:1087.1089.v2f1b_9a_b_040e4
          display-url-api:2.3.5
          echarts-api:5.3.2-1
          font-awesome-api:6.0.0-1
          jackson2-api:2.13.2.20220328-273.v11d70a_b_a_1a_52
          jquery3-api:3.6.0-3
          junit:1.59
          matrix-project:771.v574584b_39e60
          p4:1.12.2
          plugin-util-api:2.16.0
          popper-api:1.16.1-3
          popper2-api:2.11.5-1
          scm-api:608.vfa_f971c5a_a_e9
          script-security:1145.vb_cf6cf6ed960
          snakeyaml-api:1.30.1
          structs:318.va_f3ccb_729b_71
          workflow-api:1144.v61c3180fa_03f
          workflow-cps:2660.vb_c0412dc4e6d
          workflow-job:1174.vdcb_d054cf74a_
          workflow-multibranch:712.vc169a_1387405
          workflow-scm-step:399.v9b_8f4da_65061
          workflow-step-api:625.vd896b_f445a_f8
          workflow-support:818.v4eb_969241b_c7
          Cleaning up locks 

          Can you please try breaking it down in the same way.  Does that work for you?

          Also as mentioned in the output have you tried 'jenkins-plugin-cli'? (https://www.jenkins.io/doc/book/managing/plugins/)

           

          Karl Wirth added a comment - Hi orre   I'm new to Jenkins in Docker containers so I tried breaking this down into seperate steps: docker run -p 8080:8080 -p 50000:50000 --restart always jenkins/jenkins:lts-jdk11 Then open the Docker shell: docker exec -u 0 -it cbb271109ff3 /bin/bash and: echo p4:latest>/tmp/f usr/local/bin/install-plugins.sh < /tmp/f It then reports: WARN: install-plugins.sh is deprecated, please switch to jenkins-plugin-cli Creating initial locks... Analyzing war /usr/share/jenkins/jenkins.war... Registering preinstalled plugins... Using version-specific update center: https: //updates.jenkins.io/dynamic-2.332/... Downloading plugins... Downloading plugin: p4 from https: //updates.jenkins.io/dynamic-2.332//latest/p4.hpi  > p4 depends on workflow-api:2.27,workflow-multibranch:2.16,workflow-scm-step:2.6,workflow-step-api:2.14,command-launcher:1.2,credentials:2.1.16,mailer:1.21;resolution:=optional,matrix-project:1.13,multiple-scms:0.6;resolution:=optional,scm-api:2.2.7,script-security:1.44,structs:1.14 then at the end: Installed plugins: ace-editor:1.1 bootstrap4-api:4.6.0-4 bootstrap5-api:5.1.3-6 branch-api:2.1046.v0ca_37783ecc5 caffeine-api:2.9.3-65.v6a_47d0f4d1fe checks-api:1.7.3 cloudbees-folder:6.714.v79e858ef76a_2 command-launcher:81.v9c2cb_cb_db_392 credentials:1087.1089.v2f1b_9a_b_040e4 display-url-api:2.3.5 echarts-api:5.3.2-1 font-awesome-api:6.0.0-1 jackson2-api:2.13.2.20220328-273.v11d70a_b_a_1a_52 jquery3-api:3.6.0-3 junit:1.59 matrix-project:771.v574584b_39e60 p4:1.12.2 plugin-util-api:2.16.0 popper-api:1.16.1-3 popper2-api:2.11.5-1 scm-api:608.vfa_f971c5a_a_e9 script-security:1145.vb_cf6cf6ed960 snakeyaml-api:1.30.1 structs:318.va_f3ccb_729b_71 workflow-api:1144.v61c3180fa_03f workflow-cps:2660.vb_c0412dc4e6d workflow-job:1174.vdcb_d054cf74a_ workflow-multibranch:712.vc169a_1387405 workflow-scm-step:399.v9b_8f4da_65061 workflow-step-api:625.vd896b_f445a_f8 workflow-support:818.v4eb_969241b_c7 Cleaning up locks Can you please try breaking it down in the same way.  Does that work for you? Also as mentioned in the output have you tried 'jenkins-plugin-cli'? ( https://www.jenkins.io/doc/book/managing/plugins/ )  

          Karl Wirth added a comment -

          Hi orre - I have been able to reproduce this behavior with my own Dockerfile. Interestingly the plugin is still available in my Docker image so I'm not sure what the impact is of that error message. I will let the developers know I see the same behavior.

          Karl Wirth added a comment - Hi orre - I have been able to reproduce this behavior with my own Dockerfile. Interestingly the plugin is still available in my Docker image so I'm not sure what the impact is of that error message. I will let the developers know I see the same behavior.

          Karl Wirth added a comment -

          Karl Wirth added a comment - Fixed in https://github.com/jenkinsci/p4-plugin/commit/b1b230e35daeaa897437238f76ca57c192de1d1b .

          Karl Wirth added a comment -

          Released in 1.12.4

          Karl Wirth added a comment - Released in 1.12.4

            Unassigned Unassigned
            orre Oscar Norlander
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: