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

ruby plugins cannot work on Jenkins 1.519+

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Critical
    • Resolution: Fixed
    • Component/s: ruby-runtime
    • Labels:
      None
    • Environment:
      Linux sid 3.8-1-amd64 #1 SMP Debian 3.8.11-1 x86_64 GNU/Linux
    • Similar Issues:

      Description

      After upgrading Jenkins 1.519, Jenkins fails to load plugin which is depending on ruby-runtime (e.g. rbenv) by the exception of `hudson.util.IOException2: Failed to initialize`.

      Jenkins home directory: /home/yyuu/.jenkins found at: $user.home/.jenkins
      Jun 27, 2013 8:13:33 PM winstone.Logger logInternal
      INFO: HTTP Listener started: port=8080
      Jun 27, 2013 8:13:33 PM winstone.Logger logInternal
      INFO: Winstone Servlet Engine v0.9.10 running: controlPort=disabled
      Jun 27, 2013 8:13:33 PM jenkins.InitReactorRunner$1 onAttained
      INFO: Started initialization
      Jun 27, 2013 8:13:37 PM jenkins.InitReactorRunner$1 onAttained
      INFO: Listed all plugins
      Jun 27, 2013 8:13:37 PM ruby.RubyRuntimePlugin start
      INFO: Injecting JRuby into XStream
      Jun 27, 2013 8:13:41 PM jenkins.InitReactorRunner$1 onTaskFailed
      SEVERE: Failed Loading plugin rbenv
      hudson.util.IOException2: Failed to initialize
              at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:379)
              at hudson.PluginManager$2$1$1.run(PluginManager.java:334)
              at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
              at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
              at jenkins.model.Jenkins$7.runTask(Jenkins.java:893)
              at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
              at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:722)
      Caused by: java.lang.Exception: unable to locate gem bundle for rbenv at /home/yyuu/.jenkins/plugins/rbenv/WEB-INF/classes/vendor/gems
              at ruby.RubyPlugin.initRubyLoadPaths(RubyPlugin.java:202)
              at ruby.RubyPlugin.start(RubyPlugin.java:158)
              at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:387)
              at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:376)
              ... 9 more
      

      How to reproduce:

      1. Install Jenkins 1.519+
      2. Install a Jenkins plugin which is depending on ruby-runtime.

        Attachments

          Issue Links

            Activity

            Hide
            yyuu Yuu Yamashita added a comment -

            I found that this problem has been introduced from following commit for JENKINS-15120.

            f7330d7a158eff6705706b1f812993a9b918c351 is the first bad commit
            commit f7330d7a158eff6705706b1f812993a9b918c351
            Author: Kohsuke Kawaguchi <kk@kohsuke.org>
            Date:   Sat Jun 8 12:21:18 2013 +0300
            
                [FIXED JENKINS-15120]
                
                - integrated the newer release of remoting
                - jar caching won't work with class file directory, so plugin
                  WEB-INF/classes are now exploded as WEB-INF/lib/classes.jar
                  (This should also solve the problem of slow plugin extraction in the
                  presene of Anti-virus software on Windows.)
                - because the structure of the exploded jar file has changed, I changed
                  the up-to-date check timestamp file name to force re-extraction in
                  existing installations.
            
            :100644 100644 b62d2499495def2906db363fb3abc6283f1ad445 062b8e4bde3a169d0e6439c4d20e93365a51ff98 M      changelog.html
            :040000 040000 7623c02dcc413e8e2c8c8cf961eb766163e77e3b 9d5c2e08651149192680e123de36d7616a3087e7 M      core
            :040000 040000 ac627254e2446ddb45752fad05955a5dd63578fc b54c1ea17ca49034cc5eaf700f085cc6f237764e M      maven-plugin
            :100644 100644 39b28080756b0b707c5f09b4c97ba97b9fb86aaa b071d7747ef3eb25ead1551c6377a3400de64e6a M      pom.xml
            bisect run success
            
            Show
            yyuu Yuu Yamashita added a comment - I found that this problem has been introduced from following commit for JENKINS-15120 . f7330d7a158eff6705706b1f812993a9b918c351 is the first bad commit commit f7330d7a158eff6705706b1f812993a9b918c351 Author: Kohsuke Kawaguchi <kk@kohsuke.org> Date: Sat Jun 8 12:21:18 2013 +0300 [FIXED JENKINS-15120] - integrated the newer release of remoting - jar caching won't work with class file directory, so plugin WEB-INF/classes are now exploded as WEB-INF/lib/classes.jar (This should also solve the problem of slow plugin extraction in the presene of Anti-virus software on Windows.) - because the structure of the exploded jar file has changed, I changed the up-to-date check timestamp file name to force re-extraction in existing installations. :100644 100644 b62d2499495def2906db363fb3abc6283f1ad445 062b8e4bde3a169d0e6439c4d20e93365a51ff98 M changelog.html :040000 040000 7623c02dcc413e8e2c8c8cf961eb766163e77e3b 9d5c2e08651149192680e123de36d7616a3087e7 M core :040000 040000 ac627254e2446ddb45752fad05955a5dd63578fc b54c1ea17ca49034cc5eaf700f085cc6f237764e M maven-plugin :100644 100644 39b28080756b0b707c5f09b4c97ba97b9fb86aaa b071d7747ef3eb25ead1551c6377a3400de64e6a M pom.xml bisect run success
            Hide
            yyuu Yuu Yamashita added a comment - - edited

            #88 has been merged to fix this problem. It is a simple workaround that explodes WEB-INF/lib/classes.jar into WEB-INF/classes.

            Show
            yyuu Yuu Yamashita added a comment - - edited #88 has been merged to fix this problem. It is a simple workaround that explodes WEB-INF/lib/classes.jar into WEB-INF/classes.
            Hide
            yyuu Yuu Yamashita added a comment -

            I opened #89 for this too, but is somewhat complicated. Skip merging.

            Show
            yyuu Yuu Yamashita added a comment - I opened #89 for this too, but is somewhat complicated. Skip merging.
            Hide
            yyuu Yuu Yamashita added a comment -

            This will be fixed in ruby-runtime 0.12.

            Show
            yyuu Yuu Yamashita added a comment - This will be fixed in ruby-runtime 0.12.
            Hide
            ssbarnea Sorin Sbarnea added a comment -

            Something is unclear to me, a bug still present in current release (1.583) is marked as solved with the last commend saying "will be fixed in 0.12",... and that's more than a year old

            Show
            ssbarnea Sorin Sbarnea added a comment - Something is unclear to me, a bug still present in current release (1.583) is marked as solved with the last commend saying "will be fixed in 0.12",... and that's more than a year old

              People

              • Assignee:
                yyuu Yuu Yamashita
                Reporter:
                yyuu Yuu Yamashita
              • Votes:
                5 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: