Bug 961915
Summary: | Fedora 19: jruby expects JRE 1.6 | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | deesto <deesto> |
Component: | puppet | Assignee: | Mo Morsi <mmorsi> |
Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | unspecified | ||
Version: | 19 | CC: | bkabrda, jose.p.oliveira.oss, k.georgiou, mastahnke, mgoldman, mmorsi, moses, tmz, trailtotale, vanmeeuwen+fedora, vondruch |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2013-05-13 08:46:11 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
deesto
2013-05-10 18:15:53 UTC
I think this is a self-inflicted error: jruby was assuming the 1.6 path due to a user-set $JAVA_HOME; unsetting this alleviated the above error. But in a new development: $ puppet --version LoadError: no such file to load -- puppet/util/command_line require at org/jruby/RubyKernel.java:1027 require at /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:45 (root) at /usr/bin/puppet:3 $ ll /usr/share/ruby/vendor_ruby/puppet/util/command_line/ total 44 drwxr-xr-x. 2 root root 4096 May 9 15:23 ./ drwxr-xr-x. 12 root root 4096 May 9 15:23 ../ -rw-r--r--. 1 root root 3201 Mar 8 18:03 puppet_option_parser.rb -rw-r--r--. 1 root root 28859 Mar 8 18:03 trollop.rb Not sure whether this is a legitimate system problem (and whether it's ruby/jruby/puppet) or also self-inflicted. 1. I cannot confirm that puppet would require JRuby, nor I could reproduce it. 2. Installing JRuby, it seems to work just fine. Here is my log: http://paste.fedoraproject.org/11772/43461113/ Hi Vit, (In reply to comment #2) > 1. I cannot confirm that puppet would require JRuby, nor I could reproduce > it. > 2. Installing JRuby, it seems to work just fine. > > Here is my log: > > http://paste.fedoraproject.org/11772/43461113/ I mentioned that although I no longer believe this is solely due to jruby, certainly something still seems wrong: $ rpm -q puppet puppet-3.1.1-3.fc19.noarch $ rpm -q jruby jruby-1.7.2-1.fc19.noarch $ rpm -q java package java is not installed $ rpm -q java-1.7.0-openjdk java-1.7.0-openjdk-1.7.0.19-2.3.9.6.fc19.x86_64 $ puppet --version LoadError: no such file to load -- puppet/util/command_line require at org/jruby/RubyKernel.java:1027 require at /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:45 (root) at /usr/bin/puppet:3 Perhaps you could point this ticket in the proper direction? Thanks! The puppet package installs jruby as a dependency, but it does not also install the ruby 'stub', which puppet seems to require and which results in this error. I'm a bit surprised that 'ruby' is not part of the base OS install, especially since `ruby --version` does not fail and responds with the jruby version, unless the 'ruby' stub package is installed. BTW, I just tried to revisit your log paste to verify whether ruby was preinstalled in your test system, but it looks like Varnish has a problem. Error 503 Service Unavailable Service Unavailable Guru Meditation: XID: 1759763300 > $ ll /usr/share/ruby/vendor_ruby/puppet/util/command_line/
JRuby doesn't touch Ruby's vendor dir so it can't see those files. It's probably caused by Puppet being built for MRI only (we don't have any viable JRuby-specific packaging guidelines yet, so there is no usable vendor JRuby dir right now...)
(In reply to deesto from comment #3) I just stumbled upon this exact error: > LoadError: no such file to load -- puppet/util/command_line > require at org/jruby/RubyKernel.java:1027 > require at /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:45 > (root) at /usr/bin/puppet:3 I got there with a Fedora 19 minimal install. After that completed I did the following: yum -y update && yum -y install puppet && reboot My next step was to run 'puppet agent --test' to sent the certificate signing request to my master so that I could let puppet finish configuring this host. I've never had such an issue before. In fact, this is actually the 3rd F19 host I've put together this way. The first two went without a hitch. Has something changed that needs to be fixed? I think this BZ needs to be reopened, personally. Fortunately, from the above, I was able to guess a workaround of: yum install ruby This action brought in ruby and rubygem-bigdecimal (for dependencies) and all seems okay now. I this just a case of the puppet package needing a 'Requires: ruby'? |