Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-60295

jenkins-test-harness does not handle detached plugins properly

      The jenkins-test-harness framework does not seem to handle Jenkins' detached plugins properly.  If one of the detached plugins bundled in the jenkins.war file is older than what is specified in a Gradle jenkinsPlugins dependency, both will get installed and when you try to run the local Jenkins test instance it complains that the older version is installed and refuses to install any dependencies that require the newer version.

       

      This breaks tools like the Gradle JobDSL plugin as they are unable to specify a newer set of plugins to match a running Jenkins instance if some of those plugins are bundled at older versions in the jenkins-war artifact.

       

      For instance, if you had a Jenkins instance running 2.190.2 with a set of plugins updated to be (more or less) current, and tried to use the jenkins-test-harness runner to execute DSL and create jobs on your Jenkins instance, it would complain that "SCM API Plugin version 2.4.1 is older than required. To fix, install version 2.6.3 or later." because 2.4.1 is what is bundled in the 2.190.2 jenkins-war file, even though a newer version should come in through a dependency on the latest Git plugin (e.g. Git 4.0.0).

       

      When inspecting the test Jenkins instance spun up by the jenkins-test-harness, you will see that it has ended up installing BOTH versions of scm-api when it should have let the newer 2.6.3 version take precedence over 2.4.1. E.g. see this:

       

       

       

      This can be reproduced with a simple Gradle project consisting of a build.gradle file, a sample job DSL, and a small class which uses the jenkins-test-harness to provision a test Jenkins instance. This can be found in the attached jenkins-test-harness.zip file, in the jenkins-test-harness/steps-2.190.2 folder. To reproduce it there, run the following Gradle command:

       

      cd jenkins-teat-harness/steps-2.190.2
      gradlew clean testJenkins 

       

      Also included in the attached archive is a similar project but for Jenkins 2.176.3. In that version, Git 4.0.0 is not yet available so the build.gradle file specifies 3.12.0 and the jenkins-war bundled detached-plugins match what's in the build.gradle so there is no mismatch, and the test runner works okay. The difference between the two can be found in patch-2.176-to-2.190.diff

       

      It is possible to make the above testJenkins task run successfully by using a custom TestPluginManager which skips loading the declared-plugins from the jenkins-war artifact entirely. This does mean the caller is then responsible for providing enough plugins to make their test harness run correctly. An example of that working can be found in the attached .zip archive as well, in a folder jenkins-test-harness/steps-patched. The difference between that and the steps-2.190.2 folder can be found in patch-skip-declared-plugins.diff(notably, the addition of an additional plugin that is required and not loaded from jenkins-war anymore, and the specification of a custom plugin manager for the JenkinsRule which handles creating the test instance.)

       

      I am not entirely sure what the proper fix here is. If the jenkins-test-harness allowed a flag to indicate whether to load the detached-plugins folder from inside the jenkins-war file, that would allow us to avoid loading them and instead rely on the specific versions we need to match our running Jenkins instance. We are running with a local patch which does this for us and it works.... okay. However, it also seems odd that the jenkins-test-harness would install an older plugin from jenkins-war's detached-plugins when a newer one is already specified in the jenkinsPlugins dependency section of a build.gradle file. If it were smarter and did not try to keep the older version installed, the problem would likely disappear altogether. A third possibility would be for jenkins-war not to bundle a too-old version of scm-api anymore. I suspect the version currently bundled in jenkins-war:2.190.2 might come in transitively as I could not find any evidence of its being explicitly included there, but I might have missed something. However, keeping jenkins-war always updated with newer plugins seems somewhat counterintuitive and it would seem more flexible for jenkins-test-harness to avoid loading older/outdated plugins if they were bundled in the detached-plugins folder.

       

      While running the above "gradle testJenkins" custom task is an easy way to actually inspect the test instance provisioned through the test harness, it is of course also possible to run the test harness "the usual way". When run on the 2.176.3 version of the small sample project, everything is okay and it runs as follows:

       

      $ gradlew clean dslUpdateJenkins --dryRun --jenkinsUrl=https://my-production-jenkins.io/ --jenkinsUser=xxx --jenkinsApiToken=xxxxx
      
      > Task :dslUpdateJenkins
      WARNING: An illegal reflective access operation has occurred
      WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedClass (file:/Users/jenkins/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy/groovy-all/2.4.15/423a17aeb2f64bc6f76e8e44265a548bec80fd42/groovy-all-2.4.15.jar) to method java.lang.Object.finalize()
      WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedClass
      WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
      WARNING: All illegal access operations will be denied in a future release
      SLF4J: Class path contains multiple SLF4J bindings.
      SLF4J: Found binding in [jar:file:/Users/jenkins/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-simple/1.7.25/8dacf9514f0c707cbbcdd6fd699e8940d42fb54e/slf4j-simple-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: Found binding in [jar:file:/Users/jenkins/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-jdk14/1.7.25/bccda40ebc8067491b32a88f49615a747d20082d/slf4j-jdk14-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
      SLF4J: Actual binding is of type [org.slf4j.impl.SimpleLoggerFactory]
      [main] INFO org.eclipse.jetty.util.log - Logging initialized @709ms to org.eclipse.jetty.util.log.Slf4jLog
      Test timeout disabled.
      === Starting Run Job DSL Task
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - jetty-9.4.5.v20170502
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.webapp.StandardDescriptorProcessor - NO JSP Support for /jenkins, did not find org.eclipse.jetty.jsp.JettyJspServlet
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - DefaultSessionIdManager workerName=node0
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - No SessionScavenger set, using defaults
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - Scavenging every 660000ms
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.w.WebAppContext@93f432e{/jenkins,file:///Users/jenkins/Desktop/jenkins-test-harness/steps-2.176.3/build/jenkins-for-test/,AVAILABLE}{/Users/jenkins/Desktop/jenkins-test-harness/steps-2.176.3/build/jenkins-for-test}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@21f459fc{HTTP/1.1,[http/1.1]}{localhost:55162}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - Started @3117ms
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - jetty-9.4.5.v20170502
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - DefaultSessionIdManager workerName=node0
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - No SessionScavenger set, using defaults
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - Scavenging every 600000ms
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.s.ServletContextHandler@4288d98e{/,null,AVAILABLE}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@7c601d50{HTTP/1.1,[http/1.1]}{0.0.0.0:55164}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - Started @9469ms
      Installed plugins: [jdk-tool:1.0, command-launcher:1.0, script-security:1.56, jaxb:2.3.0, workflow-durable-task-step:2.22, bouncycastle-api:2.16.0, matrix-project:1.7.1, pipeline-model-api:1.3.2, ace-editor:1.0.1, pipeline-model-declarative-agent:1.1.1, plain-credentials:1.3, workflow-cps-global-lib:2.11, pipeline-model-definition:1.3.2, workflow-job:2.25, workflow-basic-steps:2.11, pipeline-stage-step:2.3, pipeline-rest-api:2.10, jackson2-api:2.8.11.3, jquery-detached:1.2.1, cloudbees-folder:6.6, docker-workflow:1.14, docker-commons:1.5, workflow-support:2.20, workflow-multibranch:2.20, git:3.12.0, durable-task:1.26, workflow-cps:2.56, structs:1.19, credentials:2.1.18, git-client:2.7.7, workflow-api:2.29, job-dsl:1.76, ssh-credentials:1.13, pipeline-input-step:2.8, junit:1.3, workflow-step-api:2.20, mailer:1.20, display-url-api:2.0, junit:1.6, matrix-project:1.4.1, antisamy-markup-formatter:1.1, windows-slaves:1.0, matrix-auth:1.1, jsch:0.1.54.1, mailer:1.20, pipeline-stage-view:2.10, pipeline-graph-analysis:1.1, script-security:1.54, pipeline-build-step:2.7, credentials-binding:1.13, pipeline-stage-tags-metadata:1.3.2, display-url-api:1.0, workflow-scm-step:2.7, icon-shim:1.0.3, scm-api:2.6.3, momentjs:1.1, git-server:1.7, pipeline-model-extensions:1.3.2, pipeline-milestone-step:1.3.1, branch-api:2.0.18, authentication-tokens:1.1, handlebars:1.1, apache-httpcomponents-client-4-api:4.5.5-3.0, lockable-resources:2.3, workflow-aggregator:2.6]
      Remote Jenkins is version 2.190.2
      Loading /Users/jenkins/Desktop/jenkins-test-harness/steps-2.176.3/src/main/dsl/TestJob.groovy
      Processing provided DSL script
      test-job (WorkflowJob): WOULD BE CREATEDdslUpdateJenkins results:
      WOULD BE CREATED: 1[Executing Run Job DSL Task] INFO org.eclipse.jetty.server.AbstractConnector - Stopped ServerConnector@21f459fc{HTTP/1.1,[http/1.1]}{localhost:0}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - Stopped scavenging
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.handler.ContextHandler - Stopped o.e.j.w.WebAppContext@93f432e{/jenkins,file:///Users/jenkins/Desktop/jenkins-test-harness/steps-2.176.3/build/jenkins-for-test/,UNAVAILABLE}{/Users/jenkins/Desktop/jenkins-test-harness/steps-2.176.3/build/jenkins-for-test}
       

       

      When run on the 2.190.2 sample project, the following output is observed:

       

      $ gradlew clean dslUpdateJenkins --dryRun --jenkinsUrl=https://my-production-jenkins.io/ --jenkinsUser=xxx --jenkinsApiToken=xxxxx
      
      > Task :dslUpdateJenkins
      WARNING: An illegal reflective access operation has occurred
      WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedClass (file:/Users/jenkins/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy/groovy-all/2.4.15/423a17aeb2f64bc6f76e8e44265a548bec80fd42/groovy-all-2.4.15.jar) to method java.lang.Object.finalize()
      WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedClass
      WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
      WARNING: All illegal access operations will be denied in a future release
      SLF4J: Class path contains multiple SLF4J bindings.
      SLF4J: Found binding in [jar:file:/Users/jenkins/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-simple/1.7.25/8dacf9514f0c707cbbcdd6fd699e8940d42fb54e/slf4j-simple-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: Found binding in [jar:file:/Users/jenkins/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-jdk14/1.7.26/c82cee90e4308cf6789d3d20255e30a670261fe7/slf4j-jdk14-1.7.26.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
      SLF4J: Actual binding is of type [org.slf4j.impl.SimpleLoggerFactory]
      [main] INFO org.eclipse.jetty.util.log - Logging initialized @716ms to org.eclipse.jetty.util.log.Slf4jLog
      Test timeout disabled.
      === Starting Run Job DSL Task
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - jetty-9.4.5.v20170502
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.webapp.StandardDescriptorProcessor - NO JSP Support for /jenkins, did not find org.eclipse.jetty.jsp.JettyJspServlet
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - DefaultSessionIdManager workerName=node0
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - No SessionScavenger set, using defaults
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - Scavenging every 600000ms
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.w.WebAppContext@6ecab872{/jenkins,file:///Users/jenkins/Desktop/jenkins-test-harness/steps-2.190.2/build/jenkins-for-test/,AVAILABLE}{/Users/jenkins/Desktop/jenkins-test-harness/steps-2.190.2/build/jenkins-for-test}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@57402ba1{HTTP/1.1,[http/1.1]}{localhost:55171}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - Started @3000ms
         4.892 [id=35]        SEVERE  jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Git plugin v4.0.0 (git)
      java.io.IOException: Jenkins Git plugin version 4.0.0 failed to load.
       - SCM API Plugin version 2.4.1 is older than required. To fix, install version 2.6.3 or later.
       - Matrix Project Plugin version 1.4 is older than required. To fix, install version 1.14 or later.
              at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:922)
              at hudson.PluginManager$2$1$1.run(PluginManager.java:545)
              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:1118)
              at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214)
              at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
              at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
              at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
              at java.base/java.lang.Thread.run(Thread.java:834)
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - jetty-9.4.5.v20170502
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - DefaultSessionIdManager workerName=node0
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - No SessionScavenger set, using defaults
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - Scavenging every 660000ms
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.s.ServletContextHandler@5a50d9fc{/,null,AVAILABLE}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@dd71b20{HTTP/1.1,[http/1.1]}{0.0.0.0:55173}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.Server - Started @9306ms
      Installed plugins: [trilead-api:1.0.4, jdk-tool:1.0, command-launcher:1.2, script-security:1.56, jaxb:2.3.0, workflow-durable-task-step:2.22, git-client:3.0.0, pipeline-model-api:1.3.2, bouncycastle-api:2.16.0, ace-editor:1.0.1, credentials:2.3.0, pipeline-model-declarative-agent:1.1.1, plain-credentials:1.3, ssh-credentials:1.17.2, workflow-cps-global-lib:2.11, pipeline-model-definition:1.3.2, workflow-scm-step:2.9, workflow-job:2.25, workflow-basic-steps:2.11, pipeline-stage-step:2.3, pipeline-rest-api:2.10, apache-httpcomponents-client-4-api:4.5.10-1.0, jackson2-api:2.8.11.3, jquery-detached:1.2.1, cloudbees-folder:6.6, docker-workflow:1.14, docker-commons:1.5, workflow-support:2.20, workflow-multibranch:2.20, structs:1.20, durable-task:1.26, workflow-cps:2.56, workflow-api:2.29, mailer:1.23, job-dsl:1.76, junit:1.26.1, scm-api:2.4.1, workflow-step-api:2.20, structs:1.18, workflow-api:2.35, matrix-project:1.4, pipeline-input-step:2.8, junit:1.3, workflow-step-api:2.20, pipeline-stage-view:2.10, pipeline-graph-analysis:1.1, script-security:1.54, pipeline-build-step:2.7, credentials-binding:1.13, pipeline-stage-tags-metadata:1.3.2, display-url-api:1.0, jsch:0.1.55.1, mailer:1.20, display-url-api:2.0, matrix-auth:2.3, matrix-project:1.14, antisamy-markup-formatter:1.1, windows-slaves:1.0, icon-shim:1.0.3, scm-api:2.6.3, momentjs:1.1, git-server:1.7, pipeline-model-extensions:1.3.2, pipeline-milestone-step:1.3.1, branch-api:2.0.18, authentication-tokens:1.1, handlebars:1.1, lockable-resources:2.3, workflow-aggregator:2.6]
      Remote Jenkins is version 2.190.2
      Loading /Users/jenkins/Desktop/jenkins-test-harness/steps-2.190.2/src/main/dsl/TestJob.groovy
      Processing provided DSL script
      test-job (WorkflowJob): WOULD BE CREATEDdslUpdateJenkins results:
      WOULD BE CREATED: 1[Executing Run Job DSL Task] INFO org.eclipse.jetty.server.AbstractConnector - Stopped ServerConnector@57402ba1{HTTP/1.1,[http/1.1]}{localhost:0}
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.session - Stopped scavenging
      [Executing Run Job DSL Task] INFO org.eclipse.jetty.server.handler.ContextHandler - Stopped o.e.j.w.WebAppContext@6ecab872{/jenkins,file:///Users/jenkins/Desktop/jenkins-test-harness/steps-2.190.2/build/jenkins-for-test/,UNAVAILABLE}{/Users/jenkins/Desktop/jenkins-test-harness/steps-2.190.2/build/jenkins-for-test}

       

      Note in the output for the second example, it complains that Git 4.0.0 cannot be installed:

       

      SEVERE  jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Git plugin v4.0.0 (git)
      java.io.IOException: Jenkins Git plugin version 4.0.0 failed to load.
       - SCM API Plugin version 2.4.1 is older than required. To fix, install version 2.6.3 or later.
       - Matrix Project Plugin version 1.4 is older than required. To fix, install version 1.14 or later.
              at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:922)
              at hudson.PluginManager$2$1$1.run(PluginManager.java:545)
              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:1118)
              at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214)
              at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
              at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
              at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
              at java.base/java.lang.Thread.run(Thread.java:834)
      

       

      And when looking at the list of installed plugins further down, note how there is both an scm-api:2.4.1 and a scm-api:2.6.3 listed.

       

      See jenkins-test-harness.zip for the three projects that can be used to reproduce this.

       

      I was not entirely sure what project to file this issue with. While jenkins-war probably falls under core, there was an earlier ticket filed at https://issues.jenkins-ci.org/browse/JENKINS-59722 which got closed as being "not a bug" there. I am filing this under the jenkins-test-harness component now because based on my troubleshooting, I think it is behaving erroneously and should either do the right thing and not install 2 different versions of a plugin if an older one was found in the jenkins-war detached plugins, or allow people to exclude the loading of detached-plugins through some sort of flag. Another related ticket was found for https://github.com/heremaps/gradle-jenkins-jobdsl-plugin/issues/129 but given that the problem (and fix, or at least my local hack) all occur outside of the gradle-jenkins-jobdsl-plugin I am not convinced that's the right place to look for a fix.

       

      Very curious what the core Jenkins maintainers think of this. I hope my sample projects (and hackish workaround) help illustrate better what we're running into here. My hackish workaround with which we are currently running locally can be found at https://github.com/heremaps/gradle-jenkins-jobdsl-plugin/compare/3.7.0...robinverduijn:fix-jenkins-detached-plugins

        1. patch-skip-declared-plugins.diff
          2 kB
          Robin Verduijn
        2. patch-2.176-to-2.190.diff
          1 kB
          Robin Verduijn
        3. Screen Shot 2019-11-26 at 16.25.32.png
          182 kB
          Robin Verduijn
        4. Screen Shot 2019-11-26 at 16.24.47.png
          72 kB
          Robin Verduijn

          [JENKINS-60295] jenkins-test-harness does not handle detached plugins properly

          I've been going mad trying to figure out this same problem. For me the credentials plugin requires structs 1.20, but the test harness is bundled with 1.18. 

          I'm using the test harness to check Job DSL scripts, as in the example [automation starter|https://github.com/kamilszymanski/jenkins-jobdsl-automation-starter]. 

          What's especially odd is that I'm having no problem running locally on my desktop, but consistently seeing this error running the Gradle project in a Jenkins build: 

              106.185 [id=30]	INFO	jenkins.InitReactorRunner$1#onAttained: Started initialization
               108.295 [id=32]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/credentials-binding-1.23.jpi under a nonstandard name; expected credentials-binding.jpi
               108.396 [id=32]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/trilead-api.jpi
               108.602 [id=32]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/p4-1.10.14.jpi under a nonstandard name; expected p4.jpi
               108.674 [id=32]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/jdk-tool.jpi
               108.719 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/github-branch-source-2.8.2.jpi under a nonstandard name; expected github-branch-source.jpi
               108.783 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/github-1.29.3.jpi under a nonstandard name; expected github.jpi
               108.890 [id=33]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/bouncycastle-api.jpi
               109.119 [id=33]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/command-launcher.jpi
               109.125 [id=33]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/script-security.jpi
               109.171 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/git-4.3.0.jpi under a nonstandard name; expected git.jpi
               109.184 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/copyartifact-1.45.jpi under a nonstandard name; expected copyartifact.jpi
               109.195 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-multibranch-2.16.jpi under a nonstandard name; expected workflow-multibranch.jpi
               109.203 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-job-2.10.jpi under a nonstandard name; expected workflow-job.jpi
               109.239 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-cps-2.32.jpi under a nonstandard name; expected workflow-cps.jpi
               109.252 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-support-2.14.jpi under a nonstandard name; expected workflow-support.jpi
               109.261 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-api-2.27.jpi under a nonstandard name; expected workflow-api.jpi
               109.267 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/build-name-setter-2.1.0.jpi under a nonstandard name; expected build-name-setter.jpi
               109.274 [id=29]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/parameterized-trigger-2.37.jpi under a nonstandard name; expected parameterized-trigger.jpi
               109.362 [id=29]	WARNING	hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/conditional-buildstep-1.3.1/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness
               109.363 [id=29]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/conditional-buildstep-1.3.1.jpi under a nonstandard name; expected conditional-buildstep.jpi
               109.465 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/mailer.jpi
               109.471 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/display-url-api.jpi
               109.540 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/matrix-auth.jpi
               109.611 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/windows-slaves.jpi
               109.680 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/antisamy-markup-formatter.jpi
               110.031 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/junit.jpi
               110.041 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/scm-api.jpi
               110.049 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/workflow-step-api.jpi
               110.055 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/structs.jpi
               110.060 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/matrix-project.jpi
               110.072 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/workflow-api.jpi
               111.010 [id=29]	WARNING	hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/run-condition-0.10/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness
               111.011 [id=29]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/run-condition-0.10.jpi under a nonstandard name; expected run-condition.jpi
               111.072 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/ant.jpi
               111.131 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/javadoc.jpi
               111.186 [id=29]	WARNING	hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/javadoc/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness
               111.239 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/external-monitor-job.jpi
               111.296 [id=29]	WARNING	hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/external-monitor-job/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness
               111.346 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/ldap.jpi
               111.618 [id=29]	WARNING	hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/ldap/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness
               111.699 [id=29]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/pam-auth.jpi
               111.745 [id=29]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/token-macro-2.12.jpi under a nonstandard name; expected token-macro.jpi
               111.751 [id=29]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-scm-step-2.11.jpi under a nonstandard name; expected workflow-scm-step.jpi
               111.759 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-step-api-2.22.jpi under a nonstandard name; expected workflow-step-api.jpi
               111.763 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/plain-credentials-1.6.jpi under a nonstandard name; expected plain-credentials.jpi
               111.885 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/git-client-3.2.1.jpi under a nonstandard name; expected git-client.jpi
               111.986 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/jsch-0.1.55.1.jpi under a nonstandard name; expected jsch.jpi
               111.994 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/ssh-credentials-1.18.1.jpi under a nonstandard name; expected ssh-credentials.jpi
               112.030 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/credentials-2.3.7.jpi under a nonstandard name; expected credentials.jpi
               112.040 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/branch-api-2.0.7.jpi under a nonstandard name; expected branch-api.jpi
               112.048 [id=35]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/scm-api-2.6.3.jpi under a nonstandard name; expected scm-api.jpi
               112.058 [id=30]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/envinject-2.3.0.jpi under a nonstandard name; expected envinject.jpi
               112.072 [id=30]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/matrix-project-1.14.jpi under a nonstandard name; expected matrix-project.jpi
               112.081 [id=30]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/junit-1.20.jpi under a nonstandard name; expected junit.jpi
               112.086 [id=30]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/structs-1.20.jpi under a nonstandard name; expected structs.jpi
               112.098 [id=31]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/cloudbees-folder-6.14.jpi under a nonstandard name; expected cloudbees-folder.jpi
               112.126 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/github-api-1.111.4.jpi under a nonstandard name; expected github-api.jpi
               112.156 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/apache-httpcomponents-client-4-api-4.5.10-2.0.jpi under a nonstandard name; expected apache-httpcomponents-client-4-api.jpi
               112.162 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/command-launcher-1.2.jpi under a nonstandard name; expected command-launcher.jpi
               112.182 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/script-security-1.73.jpi under a nonstandard name; expected script-security.jpi
               112.187 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/envinject-api-1.6.jpi under a nonstandard name; expected envinject-api.jpi
               112.224 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/jackson2-api-2.10.2.jpi under a nonstandard name; expected jackson2-api.jpi
               112.270 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/mailer-1.32.jpi under a nonstandard name; expected mailer.jpi
               112.275 [id=33]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/display-url-api-2.3.1.jpi under a nonstandard name; expected display-url-api.jpi
               112.285 [id=28]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/trilead-api-1.0.5.jpi under a nonstandard name; expected trilead-api.jpi
               112.298 [id=28]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/jquery-detached-1.2.1.jpi under a nonstandard name; expected jquery-detached.jpi
               112.594 [id=30]	WARNING	hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/ace-editor-1.0.1.jpi under a nonstandard name; expected ace-editor.jpi
               112.598 [id=32]	INFO	jenkins.InitReactorRunner$1#onAttained: Listed all plugins
               112.638 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Credentials Plugin v2.3.7 (credentials)
              java.io.IOException: Failed to load: Credentials Plugin (2.3.7)
               - Update required: Structs Plugin (1.18) to be updated to 1.20 or higher
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.639 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Plain Credentials Plugin v1.6 (plain-credentials)
              java.io.IOException: Failed to load: Plain Credentials Plugin (1.6)
               - Failed to load: Credentials Plugin (2.3.7)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.640 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin SSH Credentials Plugin v1.18.1 (ssh-credentials)
              java.io.IOException: Failed to load: SSH Credentials Plugin (1.18.1)
               - Failed to load: Credentials Plugin (2.3.7)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.640 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Credentials Binding Plugin v1.23 (credentials-binding)
              java.io.IOException: Failed to load: Credentials Binding Plugin (1.23)
               - Update required: Pipeline: Step API (2.20) to be updated to 2.22 or higher
               - Failed to load: Credentials Plugin (2.3.7)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.731 [id=28]	INFO	j.b.a.SecurityProviderInitializer#addSecurityProvider: Initializing Bouncy Castle security provider.
               112.886 [id=28]	INFO	j.b.a.SecurityProviderInitializer#addSecurityProvider: Bouncy Castle security provider initialized.
               112.894 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin P4 Plugin v1.10.14 (p4)
              java.io.IOException: Failed to load: P4 Plugin (1.10.14)
               - Failed to load: Credentials Plugin (2.3.7)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.895 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins JSch dependency plugin v0.1.55.1 (jsch)
              java.io.IOException: Failed to load: Jenkins JSch dependency plugin (0.1.55.1)
               - Failed to load: SSH Credentials Plugin (1.18.1)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.896 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Git client plugin v3.2.1 (git-client)
              java.io.IOException: Failed to load: Jenkins Git client plugin (3.2.1)
               - Failed to load: Credentials Plugin (2.3.7)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.906 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Git plugin v4.3.0 (git)
              java.io.IOException: Failed to load: Jenkins Git plugin (4.3.0)
               - Update required: Pipeline: Step API (2.20) to be updated to 2.22 or higher
               - Failed to load: Credentials Plugin (2.3.7)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.907 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin GitHub plugin v1.29.3 (github)
              java.io.IOException: Failed to load: GitHub plugin (1.29.3)
               - Failed to load: Credentials Plugin (2.3.7)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.908 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin GitHub Branch Source Plugin v2.8.2 (github-branch-source)
              java.io.IOException: Failed to load: GitHub Branch Source Plugin (2.8.2)
               - Failed to load: GitHub plugin (1.29.3)
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.910 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Copy Artifact Plugin v1.45 (copyartifact)
              java.io.IOException: Failed to load: Copy Artifact Plugin (1.45)
               - Update required: Structs Plugin (1.18) to be updated to 1.20 or higher
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.911 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Pipeline: Step API v2.22 (workflow-step-api)
              java.io.IOException: Failed to load: Pipeline: Step API (2.22)
               - Update required: Structs Plugin (1.18) to be updated to 1.20 or higher
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               112.924 [id=28]	SEVERE	jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Mailer Plugin v1.32 (mailer)
              java.io.IOException: Failed to load: Jenkins Mailer Plugin (1.32)
               - Update required: Display URL API (2.0) to be updated to 2.3.1 or higher
              	at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934)
              	at hudson.PluginManager$2$1$1.run(PluginManager.java:548)
              	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:1131)
              	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)
               115.785 [id=28]	INFO	jenkins.InitReactorRunner$1#onAttained: Prepared all plugins
               115.792 [id=30]	INFO	jenkins.InitReactorRunner$1#onAttained: Started all plugins
               116.845 [id=32]	INFO	jenkins.InitReactorRunner$1#onAttained: Augmented all extensions
               116.952 [id=35]	INFO	jenkins.InitReactorRunner$1#onAttained: System config loaded
               116.952 [id=35]	INFO	jenkins.InitReactorRunner$1#onAttained: System config adapted
               116.958 [id=31]	INFO	jenkins.InitReactorRunner$1#onAttained: Loaded all jobs
               116.958 [id=33]	INFO	jenkins.InitReactorRunner$1#onAttained: Configuration for all jobs updated
               117.130 [id=32]	INFO	jenkins.InitReactorRunner$1#onAttained: Completed initialization
          JobScriptsSpec > test script seed_job.groovy STANDARD_OUT
              Processing provided DSL script
          JobScriptsSpec > test script seed_job.groovy FAILED
              Expected no exception to be thrown, but got 'javaposse.jobdsl.dsl.DslScriptException'
                  at spock.lang.Specification.noExceptionThrown(Specification.java:118)
                  at JobScriptsSpec.test script #file.name(JobScriptsSpec.groovy:24)
           

          I'm not going to profess to know enough about the plugin loading to understand why that might be the case.

          Robert Williams added a comment - I've been going mad trying to figure out this same problem. For me the credentials plugin requires structs 1.20, but the test harness is bundled with 1.18.  I'm using the test harness to check Job DSL scripts, as in the example [automation starter| https://github.com/kamilszymanski/jenkins-jobdsl-automation-starter ].  What's especially odd is that I'm having no problem running locally on my desktop, but consistently seeing this error running the Gradle project in a Jenkins build:  106.185 [id=30] INFO jenkins.InitReactorRunner$1#onAttained: Started initialization 108.295 [id=32] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/credentials-binding-1.23.jpi under a nonstandard name; expected credentials-binding.jpi 108.396 [id=32] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/trilead-api.jpi 108.602 [id=32] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/p4-1.10.14.jpi under a nonstandard name; expected p4.jpi 108.674 [id=32] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/jdk-tool.jpi 108.719 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/github-branch-source-2.8.2.jpi under a nonstandard name; expected github-branch-source.jpi 108.783 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/github-1.29.3.jpi under a nonstandard name; expected github.jpi 108.890 [id=33] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/bouncycastle-api.jpi 109.119 [id=33] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/command-launcher.jpi 109.125 [id=33] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/script-security.jpi 109.171 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/git-4.3.0.jpi under a nonstandard name; expected git.jpi 109.184 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/copyartifact-1.45.jpi under a nonstandard name; expected copyartifact.jpi 109.195 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-multibranch-2.16.jpi under a nonstandard name; expected workflow-multibranch.jpi 109.203 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-job-2.10.jpi under a nonstandard name; expected workflow-job.jpi 109.239 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-cps-2.32.jpi under a nonstandard name; expected workflow-cps.jpi 109.252 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-support-2.14.jpi under a nonstandard name; expected workflow-support.jpi 109.261 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-api-2.27.jpi under a nonstandard name; expected workflow-api.jpi 109.267 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/build-name-setter-2.1.0.jpi under a nonstandard name; expected build-name-setter.jpi 109.274 [id=29] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/parameterized-trigger-2.37.jpi under a nonstandard name; expected parameterized-trigger.jpi 109.362 [id=29] WARNING hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/conditional-buildstep-1.3.1/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness 109.363 [id=29] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/conditional-buildstep-1.3.1.jpi under a nonstandard name; expected conditional-buildstep.jpi 109.465 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/mailer.jpi 109.471 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/display-url-api.jpi 109.540 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/matrix-auth.jpi 109.611 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/windows-slaves.jpi 109.680 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/antisamy-markup-formatter.jpi 110.031 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/junit.jpi 110.041 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/scm-api.jpi 110.049 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/workflow-step-api.jpi 110.055 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/structs.jpi 110.060 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/matrix-project.jpi 110.072 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/workflow-api.jpi 111.010 [id=29] WARNING hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/run-condition-0.10/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness 111.011 [id=29] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/run-condition-0.10.jpi under a nonstandard name; expected run-condition.jpi 111.072 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/ant.jpi 111.131 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/javadoc.jpi 111.186 [id=29] WARNING hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/javadoc/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness 111.239 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/external-monitor-job.jpi 111.296 [id=29] WARNING hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/external-monitor-job/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness 111.346 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/ldap.jpi 111.618 [id=29] WARNING hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /tmp/jenkins3372262910292591018/plugins/ldap/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness 111.699 [id=29] INFO hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /tmp/jenkins3372262910292591018/plugins/pam-auth.jpi 111.745 [id=29] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/token-macro-2.12.jpi under a nonstandard name; expected token-macro.jpi 111.751 [id=29] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-scm-step-2.11.jpi under a nonstandard name; expected workflow-scm-step.jpi 111.759 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/workflow-step-api-2.22.jpi under a nonstandard name; expected workflow-step-api.jpi 111.763 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/plain-credentials-1.6.jpi under a nonstandard name; expected plain-credentials.jpi 111.885 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/git-client-3.2.1.jpi under a nonstandard name; expected git-client.jpi 111.986 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/jsch-0.1.55.1.jpi under a nonstandard name; expected jsch.jpi 111.994 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/ssh-credentials-1.18.1.jpi under a nonstandard name; expected ssh-credentials.jpi 112.030 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/credentials-2.3.7.jpi under a nonstandard name; expected credentials.jpi 112.040 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/branch-api-2.0.7.jpi under a nonstandard name; expected branch-api.jpi 112.048 [id=35] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/scm-api-2.6.3.jpi under a nonstandard name; expected scm-api.jpi 112.058 [id=30] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/envinject-2.3.0.jpi under a nonstandard name; expected envinject.jpi 112.072 [id=30] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/matrix-project-1.14.jpi under a nonstandard name; expected matrix-project.jpi 112.081 [id=30] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/junit-1.20.jpi under a nonstandard name; expected junit.jpi 112.086 [id=30] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/structs-1.20.jpi under a nonstandard name; expected structs.jpi 112.098 [id=31] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/cloudbees-folder-6.14.jpi under a nonstandard name; expected cloudbees-folder.jpi 112.126 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/github-api-1.111.4.jpi under a nonstandard name; expected github-api.jpi 112.156 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/apache-httpcomponents-client-4-api-4.5.10-2.0.jpi under a nonstandard name; expected apache-httpcomponents-client-4-api.jpi 112.162 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/command-launcher-1.2.jpi under a nonstandard name; expected command-launcher.jpi 112.182 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/script-security-1.73.jpi under a nonstandard name; expected script-security.jpi 112.187 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/envinject-api-1.6.jpi under a nonstandard name; expected envinject-api.jpi 112.224 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/jackson2-api-2.10.2.jpi under a nonstandard name; expected jackson2-api.jpi 112.270 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/mailer-1.32.jpi under a nonstandard name; expected mailer.jpi 112.275 [id=33] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/display-url-api-2.3.1.jpi under a nonstandard name; expected display-url-api.jpi 112.285 [id=28] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/trilead-api-1.0.5.jpi under a nonstandard name; expected trilead-api.jpi 112.298 [id=28] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/jquery-detached-1.2.1.jpi under a nonstandard name; expected jquery-detached.jpi 112.594 [id=30] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /tmp/jenkins3372262910292591018/plugins/ace-editor-1.0.1.jpi under a nonstandard name; expected ace-editor.jpi 112.598 [id=32] INFO jenkins.InitReactorRunner$1#onAttained: Listed all plugins 112.638 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Credentials Plugin v2.3.7 (credentials) java.io.IOException: Failed to load: Credentials Plugin (2.3.7) - Update required: Structs Plugin (1.18) to be updated to 1.20 or higher at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.639 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Plain Credentials Plugin v1.6 (plain-credentials) java.io.IOException: Failed to load: Plain Credentials Plugin (1.6) - Failed to load: Credentials Plugin (2.3.7) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.640 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin SSH Credentials Plugin v1.18.1 (ssh-credentials) java.io.IOException: Failed to load: SSH Credentials Plugin (1.18.1) - Failed to load: Credentials Plugin (2.3.7) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.640 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Credentials Binding Plugin v1.23 (credentials-binding) java.io.IOException: Failed to load: Credentials Binding Plugin (1.23) - Update required: Pipeline: Step API (2.20) to be updated to 2.22 or higher - Failed to load: Credentials Plugin (2.3.7) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.731 [id=28] INFO j.b.a.SecurityProviderInitializer#addSecurityProvider: Initializing Bouncy Castle security provider. 112.886 [id=28] INFO j.b.a.SecurityProviderInitializer#addSecurityProvider: Bouncy Castle security provider initialized. 112.894 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin P4 Plugin v1.10.14 (p4) java.io.IOException: Failed to load: P4 Plugin (1.10.14) - Failed to load: Credentials Plugin (2.3.7) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.895 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins JSch dependency plugin v0.1.55.1 (jsch) java.io.IOException: Failed to load: Jenkins JSch dependency plugin (0.1.55.1) - Failed to load: SSH Credentials Plugin (1.18.1) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.896 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Git client plugin v3.2.1 (git-client) java.io.IOException: Failed to load: Jenkins Git client plugin (3.2.1) - Failed to load: Credentials Plugin (2.3.7) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.906 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Git plugin v4.3.0 (git) java.io.IOException: Failed to load: Jenkins Git plugin (4.3.0) - Update required: Pipeline: Step API (2.20) to be updated to 2.22 or higher - Failed to load: Credentials Plugin (2.3.7) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.907 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin GitHub plugin v1.29.3 (github) java.io.IOException: Failed to load: GitHub plugin (1.29.3) - Failed to load: Credentials Plugin (2.3.7) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.908 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin GitHub Branch Source Plugin v2.8.2 (github-branch-source) java.io.IOException: Failed to load: GitHub Branch Source Plugin (2.8.2) - Failed to load: GitHub plugin (1.29.3) at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.910 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Copy Artifact Plugin v1.45 (copyartifact) java.io.IOException: Failed to load: Copy Artifact Plugin (1.45) - Update required: Structs Plugin (1.18) to be updated to 1.20 or higher at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.911 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Pipeline: Step API v2.22 (workflow-step-api) java.io.IOException: Failed to load: Pipeline: Step API (2.22) - Update required: Structs Plugin (1.18) to be updated to 1.20 or higher at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 112.924 [id=28] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading plugin Jenkins Mailer Plugin v1.32 (mailer) java.io.IOException: Failed to load: Jenkins Mailer Plugin (1.32) - Update required: Display URL API (2.0) to be updated to 2.3.1 or higher at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:934) at hudson.PluginManager$2$1$1.run(PluginManager.java:548) 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:1131) 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) 115.785 [id=28] INFO jenkins.InitReactorRunner$1#onAttained: Prepared all plugins 115.792 [id=30] INFO jenkins.InitReactorRunner$1#onAttained: Started all plugins 116.845 [id=32] INFO jenkins.InitReactorRunner$1#onAttained: Augmented all extensions 116.952 [id=35] INFO jenkins.InitReactorRunner$1#onAttained: System config loaded 116.952 [id=35] INFO jenkins.InitReactorRunner$1#onAttained: System config adapted 116.958 [id=31] INFO jenkins.InitReactorRunner$1#onAttained: Loaded all jobs 116.958 [id=33] INFO jenkins.InitReactorRunner$1#onAttained: Configuration for all jobs updated 117.130 [id=32] INFO jenkins.InitReactorRunner$1#onAttained: Completed initialization JobScriptsSpec > test script seed_job.groovy STANDARD_OUT Processing provided DSL script JobScriptsSpec > test script seed_job.groovy FAILED Expected no exception to be thrown, but got 'javaposse.jobdsl.dsl.DslScriptException' at spock.lang.Specification.noExceptionThrown(Specification.java:118) at JobScriptsSpec.test script #file.name(JobScriptsSpec.groovy:24) I'm not going to profess to know enough about the plugin loading to understand why that might be the case.

          Felix Mueller added a comment -

          Unfortunately this issue also prevents me from testing my Jenkins Job DSL scripts, which makes the whole process very tedious. Vote +1

          Felix Mueller added a comment - Unfortunately this issue also prevents me from testing my Jenkins Job DSL scripts, which makes the whole process very tedious. Vote +1

          felix_r_mueller there's workaround for this in attached file [^patch-skip-declared-plugins.diff.]

          To use it, I've created two files:

          test/hudson/CustomPluginManager.groovy 

          package hudson
          import java.util.logging.Logger
          import org.jvnet.hudson.test.TestPluginManager
          /**
           * Modify plugin load behavior for jenkins for test
           */
          class CustomPluginManager extends TestPluginManager {
              private static final Logger LOGGER = Logger.getLogger( CustomPluginManager.name )
            
              // Skip loading all detached plugins as they conflict with our explicit build.gradle jenkinsPlugins dependencies
              @Override
              void considerDetachedPlugin( String shortName ) {
                  LOGGER.fine( 'Skipping load of detached plugin: ' + shortName )
              }
          } 

          test/hudson/CustomJenkinsRule.groovy

          package hudson
          import org.jvnet.hudson.test.JenkinsRule
          /**
           * JenkinsRule to use in Job DSL scripts tests
           */
          class CustomJenkinsRule extends JenkinsRule {
              CustomJenkinsRule() {
                  super()
                  this.pluginManager = new CustomPluginManager()
              }
          }
           

           

          And in my test looks like this:

          package com.example
          
          import javaposse.jobdsl.dsl.DslScriptLoader
          import javaposse.jobdsl.dsl.JobManagement
          import org.junit.ClassRule
          import hudson.CustomJenkinsRule
          import spock.lang.Shared
          import spock.lang.Specification
          import spock.lang.Unroll
          
          /**
           * Tests that all dsl scripts in the jobs directory will compile.
           */
          class JobScriptsSpec extends Specification {
              @Shared
              @ClassRule
              CustomJenkinsRule jenkinsRule = new CustomJenkinsRule() 
          
              @Unroll
              void 'test script #file.name'(File file) {
                  given:
                  Map <String, String> envVars = [
                      JENKINS_URL: 'http://ci.example.com',
                  ]
                  JobManagement jm = new JenkinsFileJobManagement(System.out, envVars, new File('.'),
                          new File('build', 'xml'))
                  when:
                  new DslScriptLoader(jm).runScript(file.text)
                  then:
                  noExceptionThrown()
                  where:
                  file << new FileNameFinder().getFileNames('jobs',
                      '**/*.groovy',
                      '**/seed*').collect { new File(it) }
              }
          }
          

          Andrey Babushkin added a comment - felix_r_mueller  there's workaround for this in attached file [^patch-skip-declared-plugins.diff.] To use it, I've created two files: test/hudson/CustomPluginManager.groovy  package hudson import java.util.logging.Logger import org.jvnet.hudson.test.TestPluginManager /** * Modify plugin load behavior for jenkins for test */ class CustomPluginManager extends TestPluginManager { private static final Logger LOGGER = Logger.getLogger( CustomPluginManager.name ) // Skip loading all detached plugins as they conflict with our explicit build.gradle jenkinsPlugins dependencies @Override void considerDetachedPlugin( String shortName ) { LOGGER.fine( 'Skipping load of detached plugin: ' + shortName ) } } test/hudson/CustomJenkinsRule.groovy package hudson import org.jvnet.hudson.test.JenkinsRule /** * JenkinsRule to use in Job DSL scripts tests */ class CustomJenkinsRule extends JenkinsRule { CustomJenkinsRule() { super () this .pluginManager = new CustomPluginManager() } }   And in my test looks like this: package com.example import javaposse.jobdsl.dsl.DslScriptLoader import javaposse.jobdsl.dsl.JobManagement import org.junit.ClassRule import hudson.CustomJenkinsRule import spock.lang.Shared import spock.lang.Specification import spock.lang.Unroll /** * Tests that all dsl scripts in the jobs directory will compile. */ class JobScriptsSpec extends Specification { @Shared @ClassRule CustomJenkinsRule jenkinsRule = new CustomJenkinsRule() @Unroll void 'test script #file.name' (File file) { given: Map < String , String > envVars = [ JENKINS_URL: 'http: //ci.example.com' , ] JobManagement jm = new JenkinsFileJobManagement( System .out, envVars, new File( '.' ), new File( 'build' , 'xml' )) when: new DslScriptLoader(jm).runScript(file.text) then: noExceptionThrown() where: file << new FileNameFinder().getFileNames( 'jobs' , '**/*.groovy' , '**/seed*' ).collect { new File(it) } } }

          Jesse Glick added a comment -

          Possibly a Gradle-specific issue. Maven is recommended for Jenkins plugins.

          Jesse Glick added a comment - Possibly a Gradle-specific issue. Maven is recommended for Jenkins plugins.

          Ivan Fernandez Calvo added a comment - - edited

          v2v faced the same issue using a Jenkins rule to make some functional test(using maven), if you need an upper version of any of the detached plugins you are screwup, you have to use a custom TestPluginManager

          Ivan Fernandez Calvo added a comment - - edited v2v faced the same issue using a Jenkins rule to make some functional test(using maven), if you need an upper version of any of the detached plugins you are screwup, you have to use a custom TestPluginManager

          Jesse Glick added a comment -

          Well a minimal, self-contained test case using Maven would be helpful for analysis. Possibly this was at root a core bug, so retest against a current version. I suspect that you would need JENKINS-41827 to accurately test this sort of thing in general.

          Jesse Glick added a comment - Well a minimal, self-contained test case using Maven would be helpful for analysis. Possibly this was at root a core bug, so retest against a current version. I suspect that you would need JENKINS-41827 to accurately test this sort of thing in general.

          Hakeem added a comment -

          It sucks this is marked as minor, practically any enterprise migrating over will have enough plugins to run into this  Pretty much brings the idea of testing my changes before I deploy them in an easy way off the table, and I'll have to go with running two instances (dev/prod) and escalating dev into prod. CI/CDing my CI/CD server lol

          Hakeem added a comment - It sucks this is marked as minor, practically any enterprise migrating over will have enough plugins to run into this  Pretty much brings the idea of testing my changes before I deploy them in an easy way off the table, and I'll have to go with running two instances (dev/prod) and escalating dev into prod. CI/CDing my CI/CD server lol

          Jesse Glick added a comment -

          Without any further information, assuming this is a problem in the Gradle harness, which is not very well maintained and is basically unsupported by Jenkins core developers. Maven is recommended.

          Jesse Glick added a comment - Without any further information, assuming this is a problem in the Gradle harness, which is not very well maintained and is basically unsupported by Jenkins core developers. Maven is recommended.

          Hakeem added a comment -

          jglick the problem with that is the JobDSL plugin test docs specifically call out and only provide examples for Gradle: https://github.com/jenkinsci/job-dsl-plugin/blob/master/docs/Testing-DSL-Scripts.md

          Hakeem added a comment - jglick  the problem with that is the JobDSL plugin test docs specifically call out and only provide examples for Gradle: https://github.com/jenkinsci/job-dsl-plugin/blob/master/docs/Testing-DSL-Scripts.md

          Hakeem added a comment -

          I think I just found the issue, I was seeing these logs inside of the test instance when running the test command:

                 1.608 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/pipeline-stage-step-2.5.jpi under a nonstandard name; expected pipeline-stage-step.jpi
                 1.620 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/aws-credentials-1.28.jpi under a nonstandard name; expected aws-credentials.jpi
                 1.631 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/workflow-durable-task-step-2.37.jpi under a nonstandard name; expected workflow-durable-task-step.jpi
                 1.656 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/timestamper-1.11.8.jpi under a nonstandard name; expected timestamper.jpi
                 1.664 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/pipeline-input-step-2.12.jpi under a nonstandard name; expected pipeline-input-step.jpi
                 1.677 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/matrix-auth-2.6.5.jpi under a nonstandard name; expected matrix-auth.jpi
                 1.686 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/ssh-slaves-1.31.5.jpi under a nonstandard name; expected ssh-slaves.jpi
                 1.693 [id=27]    WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered /var/folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/pipeline-model-declarative-agent-1.1.1.jpi under a nonstandard name; expected pipeline-model-declarative-
          ... // etc, wayyy more for all the plugins

           

          So, I took an actual look at how these jpi file names were being resolved, and it looks like Jenkins specifically wanted them to not have their version appended to the end. However, the default example located here doesn't parse the names in this way: https://github.com/jenkinsci/job-dsl-plugin/blob/master/docs/Testing-DSL-Scripts.md (specifically referring to the "resolveTestPlugins" task)

          However, the author of this example does resolve the jpi file names correctly: https://github.com/sheehan/job-dsl-gradle-example/blob/master/build.gradle#L74

          Replacing the "resolveTestPlugins" task with the one provided there seems to fix the issue for me

           

          Hakeem added a comment - I think I just found the issue, I was seeing these logs inside of the test instance when running the test command: 1.608 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/pipeline-stage-step-2.5.jpi under a nonstandard name; expected pipeline-stage-step.jpi 1.620 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/aws-credentials-1.28.jpi under a nonstandard name; expected aws-credentials.jpi 1.631 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/workflow-durable-task-step-2.37.jpi under a nonstandard name; expected workflow-durable-task-step.jpi 1.656 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/timestamper-1.11.8.jpi under a nonstandard name; expected timestamper.jpi 1.664 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/pipeline-input-step-2.12.jpi under a nonstandard name; expected pipeline-input-step.jpi 1.677 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/matrix-auth-2.6.5.jpi under a nonstandard name; expected matrix-auth.jpi 1.686 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/ssh-slaves-1.31.5.jpi under a nonstandard name; expected ssh-slaves.jpi 1.693 [id=27] WARNING hudson.ClassicPluginStrategy#createPluginWrapper: encountered / var /folders/p1/_yrcp3ds5f913kfcp0g9ft7h0000gp/T/jenkins12395568880198562368/pipeline-model-declarative-agent-1.1.1.jpi under a nonstandard name; expected pipeline-model-declarative- ... // etc, wayyy more for all the plugins   So, I took an actual look at how these jpi file names were being resolved, and it looks like Jenkins specifically wanted them to not have their version appended to the end. However, the default example located here doesn't parse the names in this way: https://github.com/jenkinsci/job-dsl-plugin/blob/master/docs/Testing-DSL-Scripts.md  (specifically referring to the "resolveTestPlugins" task) However, the author of this example does resolve the jpi file names correctly: https://github.com/sheehan/job-dsl-gradle-example/blob/master/build.gradle#L74 Replacing the "resolveTestPlugins" task with the one provided there seems to fix the issue for me  

            Unassigned Unassigned
            rverduijn Robin Verduijn
            Votes:
            5 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated: