Project

General

Profile

Actions

Support #29568

closed

Smart Proxy: NameError: uninitialized constant Rabl::ActionView

Added by Michael Keck about 4 years ago. Updated about 4 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Triaged:
No
Fixed in Releases:
Found in Releases:

Description

I'm trying to install and run Smart Proxy within a Docker container which is based on the Foreman Docker container (https://github.com/theforeman/foreman/blob/2f73d131e7bb3793a2140fd9a36b40c0d4469428/Dockerfile)

I'm installing Smart Proxy from source by putting the following line into Gemfile.local.rb

gem "smart_proxy", :git => "git://github.com/theforeman/smart-proxy.git", :tag => "2.0.0" 

and calling then

/usr/bin/ruby /usr/bin/bundle install

Installation seems to succeed.

When I'm trying to execute then

bundle exec bin/smart-proxy

I'm getting the following error:

bash-5.0$ bundle exec bin/smart-proxy
bundler: failed to load command: bin/smart-proxy (bin/smart-proxy)
NameError: uninitialized constant Rabl::ActionView
  /home/foreman/vendor/ruby/2.6.0/gems/rabl-0.14.2/lib/rabl/digestor.rb:2:in `<module:Rabl>'
  /home/foreman/vendor/ruby/2.6.0/gems/rabl-0.14.2/lib/rabl/digestor.rb:1:in `<top (required)>'
  /home/foreman/vendor/ruby/2.6.0/gems/rabl-0.14.2/lib/rabl.rb:21:in `<top (required)>'
  /usr/share/gems/gems/bundler-1.17.2/lib/bundler/runtime.rb:81:in `require'
  /usr/share/gems/gems/bundler-1.17.2/lib/bundler/runtime.rb:81:in `block (2 levels) in require'
  /usr/share/gems/gems/bundler-1.17.2/lib/bundler/runtime.rb:76:in `each'
  /usr/share/gems/gems/bundler-1.17.2/lib/bundler/runtime.rb:76:in `block in require'
  /usr/share/gems/gems/bundler-1.17.2/lib/bundler/runtime.rb:65:in `each'
  /usr/share/gems/gems/bundler-1.17.2/lib/bundler/runtime.rb:65:in `require'
  /usr/share/gems/gems/bundler-1.17.2/lib/bundler.rb:114:in `require'
  /home/foreman/vendor/ruby/2.6.0/bundler/gems/smart-proxy-588e12114437/lib/bundler_helper.rb:25:in `require_groups'
  /home/foreman/vendor/ruby/2.6.0/bundler/gems/smart-proxy-588e12114437/lib/smart_proxy_main.rb:31:in `<top (required)>'
  /home/foreman/vendor/ruby/2.6.0/bundler/gems/smart-proxy-588e12114437/bin/smart-proxy:5:in `require'
  /home/foreman/vendor/ruby/2.6.0/bundler/gems/smart-proxy-588e12114437/bin/smart-proxy:5:in `<top (required)>'
  bin/smart-proxy:29:in `load'
  bin/smart-proxy:29:in `<top (required)>'

Please bear with me if I'm missing something. I'm new to Foreman, Smart Proxy and Ruby, so pretty much the entire stack.

Actions #1

Updated by Ewoud Kohl van Wijngaarden about 4 years ago

Running the smart proxy in the same container is a very odd thing to do. They are using very different stacks (Rails vs Sinatra). Smart Proxy doesn't have a database while Foreman does. You don't need NodeJS in the smart proxy. I think it's better to use a clean Dockerfile.

Actions #2

Updated by Anonymous about 4 years ago

  • Tracker changed from Bug to Support
  • Project changed from Foreman to Smart Proxy
  • Category deleted (Smart Proxy)
  • Status changed from New to Resolved
Actions

Also available in: Atom PDF