I copied /var/www/ood/apps/sys/myjobs
into ~/ondemand/dev/myjobs
. I see it in “My Sandbox Apps (Development)”, but when I click on it, I get this:
#<ActionView::Template::Error: No such file or directory - bundle>
Here is the full traceback:
```
/usr/lib/ruby/2.7.0/open3.rb:213:in `spawn'
/usr/lib/ruby/2.7.0/open3.rb:213:in `popen_run'
/usr/lib/ruby/2.7.0/open3.rb:208:in `popen2e'
/usr/lib/ruby/2.7.0/open3.rb:390:in `capture2e'
/modules/apps/ood/apps-config/sys/dashboard/app/models/product.rb:56:in `block (2 levels) in gems_installed?'
/usr/lib/ruby/2.7.0/bundler.rb:376:in `block in with_clean_env'
/usr/lib/ruby/2.7.0/bundler.rb:677:in `with_env'
/usr/lib/ruby/2.7.0/bundler.rb:376:in `with_clean_env'
/modules/apps/ood/apps-config/sys/dashboard/app/models/product.rb:54:in `block in gems_installed?'
/modules/apps/ood/apps-config/sys/dashboard/app/models/product.rb:53:in `chdir'
/modules/apps/ood/apps-config/sys/dashboard/app/models/product.rb:53:in `gems_installed?'
/modules/apps/ood/apps-config/sys/dashboard/app/models/product.rb:43:in `gems_are_valid'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:426:in `block in make_lambda'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:179:in `block (2 levels) in halting_and_conditional'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:606:in `block (2 levels) in default_terminator'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:605:in `catch'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:605:in `block in default_terminator'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:180:in `block in halting_and_conditional'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:513:in `block in invoke_before'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:513:in `each'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:513:in `invoke_before'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:131:in `run_callbacks'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:816:in `_run_validate_callbacks'
/opt/ood/gems/gems/activemodel-5.2.8.1/lib/active_model/validations.rb:409:in `run_validations!'
/opt/ood/gems/gems/activemodel-5.2.8.1/lib/active_model/validations.rb:339:in `valid?'
/modules/apps/ood/apps-config/sys/dashboard/app/views/products/show.html.erb:146:in `_app_views_products_show_html_erb__2634101486107992025_19280'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/template.rb:159:in `block in render'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:170:in `instrument'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/template.rb:354:in `instrument_render_template'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/template.rb:157:in `render'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/template_renderer.rb:54:in `block (2 levels) in render_template'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/abstract_renderer.rb:44:in `block in instrument'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:170:in `instrument'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/abstract_renderer.rb:43:in `instrument'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/template_renderer.rb:53:in `block in render_template'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/template_renderer.rb:61:in `render_with_layout'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/template_renderer.rb:52:in `render_template'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/template_renderer.rb:16:in `render'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/renderer.rb:44:in `render_template'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/renderer/renderer.rb:25:in `render'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/rendering.rb:103:in `_render_template'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/streaming.rb:219:in `_render_template'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/rendering.rb:84:in `render_to_body'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/rendering.rb:52:in `render_to_body'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/renderers.rb:142:in `render_to_body'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/abstract_controller/rendering.rb:25:in `render'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/rendering.rb:36:in `render'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/instrumentation.rb:46:in `block (2 levels) in render'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/core_ext/benchmark.rb:14:in `block in ms'
/usr/lib/ruby/2.7.0/benchmark.rb:308:in `realtime'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/core_ext/benchmark.rb:14:in `ms'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/instrumentation.rb:46:in `block in render'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/instrumentation.rb:87:in `cleanup_view_runtime'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/instrumentation.rb:45:in `render'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/implicit_render.rb:35:in `default_render'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/basic_implicit_render.rb:6:in `block in send_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/basic_implicit_render.rb:6:in `tap'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/abstract_controller/base.rb:194:in `process_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/rendering.rb:30:in `process_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/abstract_controller/callbacks.rb:42:in `block in process_action'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:132:in `run_callbacks'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/abstract_controller/callbacks.rb:41:in `process_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/rescue.rb:22:in `process_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/instrumentation.rb:34:in `block in process_action'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:168:in `block in instrument'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:168:in `instrument'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/instrumentation.rb:32:in `process_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal/params_wrapper.rb:256:in `process_action'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/abstract_controller/base.rb:134:in `process'
/opt/ood/gems/gems/actionview-5.2.8.1/lib/action_view/rendering.rb:32:in `process'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal.rb:191:in `dispatch'
/modules/apps/ood/apps-config/sys/dashboard/app/controllers/products_controller.rb:137:in `dispatch'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_controller/metal.rb:252:in `dispatch'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/routing/route_set.rb:52:in `dispatch'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/routing/route_set.rb:34:in `serve'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/routing/mapper.rb:18:in `block in '
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/routing/mapper.rb:48:in `serve'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/journey/router.rb:52:in `block in serve'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/journey/router.rb:35:in `each'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/journey/router.rb:35:in `serve'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/routing/route_set.rb:840:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/tempfile_reaper.rb:15:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/etag.rb:27:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/conditional_get.rb:27:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/head.rb:12:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/http/content_security_policy.rb:18:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/session/abstract/id.rb:266:in `context'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/session/abstract/id.rb:260:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/cookies.rb:670:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:98:in `run_callbacks'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/callbacks.rb:26:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/debug_exceptions.rb:61:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
/opt/ood/gems/gems/lograge-0.12.0/lib/lograge/rails_ext/rack/logger.rb:18:in `call_app'
/opt/ood/gems/gems/railties-5.2.8.1/lib/rails/rack/logger.rb:26:in `block in call'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/tagged_logging.rb:71:in `block in tagged'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/tagged_logging.rb:28:in `tagged'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/tagged_logging.rb:71:in `tagged'
/opt/ood/gems/gems/railties-5.2.8.1/lib/rails/rack/logger.rb:26:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
/opt/ood/gems/gems/request_store-1.5.1/lib/request_store/middleware.rb:19:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/request_id.rb:27:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/method_override.rb:24:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/runtime.rb:22:in `call'
/opt/ood/gems/gems/activesupport-5.2.8.1/lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call'
/opt/ood/gems/gems/actionpack-5.2.8.1/lib/action_dispatch/middleware/executor.rb:14:in `call'
/opt/ood/gems/gems/rack-2.2.4/lib/rack/sendfile.rb:110:in `call'
/opt/ood/gems/gems/railties-5.2.8.1/lib/rails/engine.rb:524:in `call'
/opt/ood/ondemand/root/usr/share/ruby/vendor_ruby/phusion_passenger/rack/thread_handler_extension.rb:107:in `process_request'
/opt/ood/ondemand/root/usr/share/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:149:in `accept_and_process_next_request'
/opt/ood/ondemand/root/usr/share/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:110:in `main_loop'
/opt/ood/ondemand/root/usr/share/ruby/vendor_ruby/phusion_passenger/request_handler.rb:419:in `block (3 levels) in start_threads'
/opt/ood/ondemand/root/usr/share/ruby/vendor_ruby/phusion_passenger/utils.rb:113:in `block in create_thread_and_abort_on_exception'
```
Any ideas?
I found that I used rsync with globbing and that I missed the .bundle
directory:
rsync -r /var/www/ood/apps/sys/myjobs/* ~/ondemand/dev/myjobs
I do this because this makes it behave consistently with cp
in terms of where the files end up.
I thought for sure this was the problem, and I copied .bundle/
, but it didn’t make a difference.
You appear to be hitting this block where the bundle
command is not in the PATH
and therefore you have the error No such file or directory - bundle
.
errors.add(:base, "Gemfile missing <code>rails_12factor</code> gem") unless gemfile_specs.detect {|s| s.name == "rails_12factor"}
errors.add(:base, "Gemfile missing <code>dotenv-rails</code> gem") unless gemfile_specs.detect {|s| s.name == "dotenv-rails"}
errors.add(:base, "Gemfile missing <code>ood_appkit</code> gem") unless gemfile_specs.detect {|s| s.name == "ood_appkit"}
end
end
def gems_installed?
Dir.chdir(router.path) do
Bundler.with_unbundled_env do
ENV['BUNDLE_USER_CONFIG'] = '/dev/null'
_, s = Open3.capture2e("bundle", "check")
s.success?
end
end
end
def is_git_repo
errors.add(:base, "Not a valid git repo") unless git_repo?
end
class NotFound < StandardError; end
Looking at your stack trace, I am not sure where/how you’ve installed this in /modules/apps/ood/apps-config/sys/dashboard/
as a part of the module system?
In any case, when we boot this app on a web node it should find ruby (the binary/command) and bundle (the command) in the PATH from either SCL stuff or them just being in the regular PATH.
What OS is your web node (the node that has OnDemand & apache installed on it).
My OOD head node runs Ubuntu 20.04.
root@ood-head:~ # which bundle
root@ood-head:~ #
I did find /usr/lib/ruby/gems/2.7.0/gems/bundler-2.1.2/libexec/bundle
The reason that the OOD apps live in what we call /modules/apps/ood
is just so that we could NFS mount that directory for easy access. That directory is mostly used for Lmod installs.
I’ve got to build a Ubuntu container to figure out what’s going on.
system
(system)
Closed
November 6, 2023, 1:48pm
6
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.