Bug #10349
closedcannot load such file -- net/ssh/proxy/command
Description
I am unable to access the Libvirt compute resource or create new hosts.
Virtual machines tab displays this message instead of the VM list.
There was an error listing VMs: 500 Internal Server Error
Stack Trace:
LoadError cannot load such file -- net/ssh/proxy/command app/models/compute_resources/foreman/model/libvirt.rb:159:in `client' app/models/compute_resources/foreman/model/libvirt.rb:147:in `hypervisor' app/views/compute_resources/form/_libvirt.html.erb:8:in `_app_views_compute_resources_form__libvirt_html_erb__1231119379296450952_85733100' app/views/compute_resources/_form.html.erb:25:in `block in _app_views_compute_resources__form_html_erb__2854827704592264170_70158304197900' app/helpers/layout_helper.rb:273:in `form_for' app/views/compute_resources/_form.html.erb:2:in `_app_views_compute_resources__form_html_erb__2854827704592264170_70158304197900' app/views/compute_resources/edit.html.erb:3:in `_app_views_compute_resources_edit_html_erb__4338720198594289590_85998900' app/controllers/concerns/application_shared.rb:13:in `set_timezone' app/models/concerns/foreman/thread_session.rb:32:in `clear_thread' lib/middleware/catch_json_parse_errors.rb:9:in `call'
Updated by Dominic Cleal over 9 years ago
Which OS are you using, and how did you install Foreman?
Updated by Earl Chery over 9 years ago
Dominic Cleal wrote:
Which OS are you using, and how did you install Foreman?
I am using Centos 6.6. I've had Foreman running on this host since version 1.4 with automatic updating via the Foreman repo. So I have been able to view the VMs in the past. I originally installed it via the EPEL and yum.
Updated by Dominic Cleal over 9 years ago
Could you show the output from these commands please?
rpm -q ruby193-rubygem-net-ssh
rpm -V ruby193-rubygem-net-ssh
scl enable ruby193 'ruby -rnet/ssh/proxy/command -etrue'
Updated by Earl Chery over 9 years ago
[root@foreman ~]# rpm -q ruby193-rubygem-net-ssh ruby193-rubygem-net-ssh-2.6.7-1.el6.noarch [root@foreman ~]# rpm -V ruby193-rubygem-net-ssh missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/command.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/errors.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/http.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/socks4.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/socks5.rb [root@foreman ~]# scl enable ruby193 'ruby -rnet/ssh/proxy/command -etrue' /opt/rh/ruby193/root/usr/share/rubygems/rubygems/custom_require.rb:36:in `require': cannot load such file -- net/ssh/proxy/command (LoadError) from /opt/rh/ruby193/root/usr/share/rubygems/rubygems/custom_require.rb:36:in `require' [root@foreman ~]#
It looks like I am missing some items, but when I run yum it says that 2.6.7*-1* is already installed.
[root@foreman ~]# yum install ruby193-rubygem-net-ssh Loaded plugins: fastestmirror, security Setting up Install Process Loading mirror speeds from cached hostfile * epel: mirrors.mit.edu Package ruby193-rubygem-net-ssh-2.6.7-1.el6.noarch already installed and latest version Nothing to do
Updated by Earl Chery over 9 years ago
Upon further investigation it looks like the ruby files are actually located on the system here:
[root@foreman ~]# locate ssh/proxy | more /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/EC0 /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/EC0/entries_per_page /usr/lib/ruby/gems/1.8/gems/net-ssh-2.9.2/lib/net/ssh/proxy /usr/lib/ruby/gems/1.8/gems/net-ssh-2.9.2/lib/net/ssh/proxy/command.rb /usr/lib/ruby/gems/1.8/gems/net-ssh-2.9.2/lib/net/ssh/proxy/errors.rb /usr/lib/ruby/gems/1.8/gems/net-ssh-2.9.2/lib/net/ssh/proxy/http.rb /usr/lib/ruby/gems/1.8/gems/net-ssh-2.9.2/lib/net/ssh/proxy/socks4.rb /usr/lib/ruby/gems/1.8/gems/net-ssh-2.9.2/lib/net/ssh/proxy/socks5.rb
Instead of here:
[root@foreman ~]# rpm -V ruby193-rubygem-net-ssh missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/command.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/errors.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/http.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/socks4.rb missing /opt/rh/ruby193/root/usr/share/gems/gems/net-ssh-2.6.7/lib/net/ssh/proxy/socks5.rb
Symlinking the actual location to the missing location allowed Foreman to display the VM list again. Thanks.
Updated by Dominic Cleal over 9 years ago
- Status changed from New to Rejected
That's actually supplied by a different RPM, you'll probably have both ruby193 and non-ruby193 variants installed. You might prefer to do a yum reinstall ruby193-rubygem-net-ssh
which should put the missing files back.
Glad it's sorted though.