Help with plugin - Gem loading error: cannot load such file

What's really strange is that I have thus plugin working on a test
installation, but I can't get it to work on production.

NOT MY
CODE
https://github.com/01100010011001010110010101110000/foreman_azure_rm

  • this is something I'm really, really interested in getting working.

The gem builds fine (gem build foreman_azure_rm.gemspec) - and I can
install the same exact gem on my test server.

I install it via: scl enable tfm "gem install
/root/foreman_azure_rm/foreman_azure_rm-1.3.0.gem"

I can see the gem in
/opt/rh/rh-ruby22/root/usr/local/share/gems/gems/foreman_azure_rm-1.3.0

I create /usr/share/foreman/bundler.d/Gemfile.local.rb, with a single line:
gem 'foreman_azure_rm'

I restart httpd, and I get: Gem loading error: cannot load such file –
foreman_azure_rm (RuntimeError)

If I run: scl enable tfm "gem list", I see the gem listed. And when I list:
scl enable tfm "gem contents foreman_azure_rm", everything is listed in the
/opt/rh/rh-ruby22/root/usr/local/share/gems/gems path.

Any help on how I can troubleshoot this? Have I done something wrong?

Hey Josh,

Is that error line the only stack trace there is?

··· On Jul 19, 2017 2:29 PM, "jpavel" wrote:

What’s really strange is that I have thus plugin working on a test
installation, but I can’t get it to work on production.

NOT MY CODE https://github.com/011000100110010101100101011100
00/foreman_azure_rm - this is something I’m really, really interested in
getting working.

The gem builds fine (gem build foreman_azure_rm.gemspec) - and I can
install the same exact gem on my test server.

I install it via: scl enable tfm “gem install /root/foreman_azure_rm/
foreman_azure_rm-1.3.0.gem”

I can see the gem in /opt/rh/rh-ruby22/root/usr/
local/share/gems/gems/foreman_azure_rm-1.3.0

I create /usr/share/foreman/bundler.d/Gemfile.local.rb, with a single line:
gem ‘foreman_azure_rm’

I restart httpd, and I get: Gem loading error: cannot load such file –
foreman_azure_rm (RuntimeError)

If I run: scl enable tfm “gem list”, I see the gem listed. And when I list:
scl enable tfm “gem contents foreman_azure_rm”, everything is listed in the
/opt/rh/rh-ruby22/root/usr/local/share/gems/gems path.

Any help on how I can troubleshoot this? Have I done something wrong?


You received this message because you are subscribed to the Google Groups
"Foreman users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at https://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.

No, here's a more complete trace:

Gem loading error: cannot load such file – foreman_azure_rm (RuntimeError)
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/output.rb:13:in strict_err' /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:46:inrescue in block in system_require'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:39:in block in system_require' /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:37:ineach'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:37:in system_require' /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:19:inblock in system_require'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:14:in each' /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:14:insystem_require'
/usr/share/foreman/config/application.rb:16:in <top (required)>' /opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:inrequire'
/opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:in require&#39; /usr/share/foreman/config/environment.rb:2:in<top (required)>'
/opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:in require&#39; /opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:inrequire'
config.ru:3:in block in &lt;main&gt;&#39; /opt/rh/sclo-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/builder.rb:55:ininstance_eval'
/opt/rh/sclo-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/builder.rb:55:in initialize&#39; config.ru:1:innew'
config.ru:1:in &lt;main&gt;&#39; /usr/share/passenger/helper-scripts/rack-preloader.rb:112:ineval'
/usr/share/passenger/helper-scripts/rack-preloader.rb:112:in preload_app&#39; /usr/share/passenger/helper-scripts/rack-preloader.rb:158:in<module:App>'
/usr/share/passenger/helper-scripts/rack-preloader.rb:29:in &lt;module:PhusionPassenger&gt;&#39; /usr/share/passenger/helper-scripts/rack-preloader.rb:28:in<main>'

··· On Thursday, July 20, 2017 at 7:37:03 AM UTC-4, Eric Helms wrote: > > Hey Josh, > > Is that error line the only stack trace there is? > > On Jul 19, 2017 2:29 PM, "jpavel" <josh....@gmail.com > > wrote: > > What's really strange is that I have thus plugin working on a test > installation, but I can't get it to work on production. > > *NOT MY CODE* > https://github.com/01100010011001010110010101110000/foreman_azure_rm - > this is something I'm really, really interested in getting working. > > The gem builds fine (gem build foreman_azure_rm.gemspec) - and I can > install the same exact gem on my test server. > > I install it via: scl enable tfm "gem install > /root/foreman_azure_rm/foreman_azure_rm-1.3.0.gem" > > I can see the gem in > /opt/rh/rh-ruby22/root/usr/local/share/gems/gems/foreman_azure_rm-1.3.0 > > I create /usr/share/foreman/bundler.d/Gemfile.local.rb, with a single > line: gem 'foreman_azure_rm' > > I restart httpd, and I get: *Gem loading error: cannot load such file -- > foreman_azure_rm (RuntimeError)* > > If I run: scl enable tfm "gem list", I see the gem listed. And when I > list: scl enable tfm "gem contents foreman_azure_rm", everything is listed > in the /opt/rh/rh-ruby22/root/usr/local/share/gems/gems path. > > Any help on how I can troubleshoot this? Have I done something wrong? > > > -- > You received this message because you are subscribed to the Google Groups > "Foreman users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to foreman-user...@googlegroups.com . > To post to this group, send email to forema...@googlegroups.com > . > Visit this group at https://groups.google.com/group/foreman-users. > For more options, visit https://groups.google.com/d/optout. > > >

So, here's what's interesting…

I'm pretty sure the system's umask is/was breaking this.

Once I fixed permissions up a bunch, I got to a whole lot of errors reading
gemspecs from /opt/rh/rh-ruby22/root/usr/local/share/gems/specifications
So, I chmod 644'ed all the gemspecs in there. Then all of a sudden I got an
error on Gem loading error: cannot load such file – rails/i18n
(RuntimeError)…

The only way I found to get Foreman back up and running was to "break" the
permissions again… I chmod 700'ed /opt/rh/rh-ruby22/root/usr/local/share

So, now Foreman is working again, but I'm not trying to use this gem.

My belief/understanding is that I have a ruby gem environment in that
directory that can't be seen by Foreman right now, which is good, because I
bet it conflicts with a lot of the system stuff.

Any suggestions on how to move forward?

··· On Thursday, July 20, 2017 at 7:56:21 AM UTC-4, jpavel wrote: > > No, here's a more complete trace: > > Gem loading error: cannot load such file -- foreman_azure_rm (RuntimeError) > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/output.rb:13:in `strict_err' > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:46:in `rescue in block in system_require' > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:39:in `block in system_require' > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:37:in `each' > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:37:in `system_require' > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:19:in `block in system_require' > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:14:in `each' > /opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:14:in `system_require' > /usr/share/foreman/config/application.rb:16:in `' > /opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:in `require' > /opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:in `require' > /usr/share/foreman/config/environment.rb:2:in `' > /opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:in `require' > /opt/rh/rh-ruby22/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:54:in `require' > config.ru:3:in `block in ' > /opt/rh/sclo-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/builder.rb:55:in `instance_eval' > /opt/rh/sclo-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/builder.rb:55:in `initialize' > config.ru:1:in `new' > config.ru:1:in `' > /usr/share/passenger/helper-scripts/rack-preloader.rb:112:in `eval' > /usr/share/passenger/helper-scripts/rack-preloader.rb:112:in `preload_app' > /usr/share/passenger/helper-scripts/rack-preloader.rb:158:in `' > /usr/share/passenger/helper-scripts/rack-preloader.rb:29:in `' > /usr/share/passenger/helper-scripts/rack-preloader.rb:28:in `' > > > On Thursday, July 20, 2017 at 7:37:03 AM UTC-4, Eric Helms wrote: >> >> Hey Josh, >> >> Is that error line the only stack trace there is? >> >> On Jul 19, 2017 2:29 PM, "jpavel" wrote: >> >> What's really strange is that I have thus plugin working on a test >> installation, but I can't get it to work on production. >> >> *NOT MY CODE* >> https://github.com/01100010011001010110010101110000/foreman_azure_rm - >> this is something I'm really, really interested in getting working. >> >> The gem builds fine (gem build foreman_azure_rm.gemspec) - and I can >> install the same exact gem on my test server. >> >> I install it via: scl enable tfm "gem install >> /root/foreman_azure_rm/foreman_azure_rm-1.3.0.gem" >> >> I can see the gem in >> /opt/rh/rh-ruby22/root/usr/local/share/gems/gems/foreman_azure_rm-1.3.0 >> >> I create /usr/share/foreman/bundler.d/Gemfile.local.rb, with a single >> line: gem 'foreman_azure_rm' >> >> I restart httpd, and I get: *Gem loading error: cannot load such file -- >> foreman_azure_rm (RuntimeError)* >> >> If I run: scl enable tfm "gem list", I see the gem listed. And when I >> list: scl enable tfm "gem contents foreman_azure_rm", everything is listed >> in the /opt/rh/rh-ruby22/root/usr/local/share/gems/gems path. >> >> Any help on how I can troubleshoot this? Have I done something wrong? >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Foreman users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to foreman-user...@googlegroups.com. >> To post to this group, send email to forema...@googlegroups.com. >> Visit this group at https://groups.google.com/group/foreman-users. >> For more options, visit https://groups.google.com/d/optout. >> >> >>