Created attachment 1455940 [details] screenshot Description of problem: When I try to open Compute->Migration view in just deployed pod appliance, I get "undefined method `split' for nil:NilClass [migration/index]" error. Backtrace from logs is below. No such issue in regular appliance. Version-Release number of selected component (if applicable): 5.10.0.2 How reproducible: 100% (pod appliance) Steps to Reproduce: 1. deploy pod appliance 2. open Compute->Migration view Actual results: broken view Expected results: correctly rendered view Additional info: [----] I, [2018-07-02T10:58:59.909176 #268:371dbdc] INFO -- : Rendering /opt/rh/cfme-gemset/bundler/gems/miq_v2v_ui_plugin-1fe233df296f/app/views/migration/index.html.haml within layouts/application [----] I, [2018-07-02T10:58:59.936724 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/miq_v2v_ui_plugin-1fe233df296f/app/views/migration/index.html.haml within layouts/application (27.3ms) [----] F, [2018-07-02T10:58:59.937846 #268:371dbdc] FATAL -- : Error caught: [ActionView::Template::Error] undefined method `split' for nil:NilClass /opt/rh/cfme-gemset/bundler/gems/miq_v2v_ui_plugin-1fe233df296f/app/controllers/migration_controller.rb:26:in `migration_sha' /opt/rh/cfme-gemset/bundler/gems/miq_v2v_ui_plugin-1fe233df296f/app/views/migration/index.html.haml:1:in `__opt_rh_cfme_gemset_bundler_gems_miq_v_v_ui_plugin__fe___df___f_app_views_migration_index_html_haml__738661422996244503_136885220' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/template.rb:159:in `block in render' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/notifications.rb:166:in `instrument' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/template.rb:354:in `instrument' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/template.rb:157:in `render' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/template_renderer.rb:54:in `block (2 levels) in render_template' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/abstract_renderer.rb:42:in `block in instrument' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/notifications.rb:164:in `block in instrument' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/notifications/instrumenter.rb:21:in `instrument' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/notifications.rb:164:in `instrument' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/abstract_renderer.rb:41:in `instrument' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/template_renderer.rb:53:in `block in render_template' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/template_renderer.rb:61:in `render_with_layout' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/template_renderer.rb:52:in `render_template' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/template_renderer.rb:14:in `render' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/renderer.rb:42:in `render_template' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/renderer/renderer.rb:23:in `render' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/rendering.rb:104:in `_render_template' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/streaming.rb:217:in `_render_template' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/rendering.rb:83:in `render_to_body' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/rendering.rb:52:in `render_to_body' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/renderers.rb:142:in `render_to_body' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/abstract_controller/rendering.rb:26:in `render' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/rendering.rb:36:in `render' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/instrumentation.rb:44:in `block (2 levels) in render' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/core_ext/benchmark.rb:12:in `block in ms' /usr/share/ruby/benchmark.rb:308:in `realtime' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/core_ext/benchmark.rb:12:in `ms' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/instrumentation.rb:44:in `block in render' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/instrumentation.rb:87:in `cleanup_view_runtime' /opt/rh/cfme-gemset/gems/activerecord-5.0.7/lib/active_record/railties/controller_runtime.rb:25:in `cleanup_view_runtime' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/instrumentation.rb:43:in `render' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/implicit_render.rb:36:in `default_render' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/basic_implicit_render.rb:4:in `block in send_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/basic_implicit_render.rb:4:in `tap' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/basic_implicit_render.rb:4:in `send_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/abstract_controller/base.rb:188:in `process_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/rendering.rb:30:in `process_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/abstract_controller/callbacks.rb:20:in `block in process_action' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:126:in `call' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:506:in `block (2 levels) in compile' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:455:in `call' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:101:in `__run_callbacks__' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:750:in `_run_process_action_callbacks' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:90:in `run_callbacks' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/abstract_controller/callbacks.rb:19:in `process_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/rescue.rb:20:in `process_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/notifications.rb:164:in `block in instrument' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/notifications/instrumenter.rb:21:in `instrument' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/notifications.rb:164:in `instrument' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/instrumentation.rb:30:in `process_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal/params_wrapper.rb:248:in `process_action' /opt/rh/cfme-gemset/gems/activerecord-5.0.7/lib/active_record/railties/controller_runtime.rb:18:in `process_action' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/abstract_controller/base.rb:126:in `process' /opt/rh/cfme-gemset/gems/actionview-5.0.7/lib/action_view/rendering.rb:30:in `process' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal.rb:190:in `dispatch' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_controller/metal.rb:262:in `dispatch' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/routing/route_set.rb:50:in `dispatch' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/routing/route_set.rb:32:in `serve' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/journey/router.rb:39:in `block in serve' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/journey/router.rb:26:in `each' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/journey/router.rb:26:in `serve' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/routing/route_set.rb:727:in `call' /opt/rh/cfme-gemset/bundler/gems/manageiq-graphql-5f68621f2791/lib/manageiq/graphql/rest_api_proxy.rb:18:in `call' /opt/rh/cfme-gemset/gems/secure_headers-3.0.3/lib/secure_headers/middleware.rb:10:in `call' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/etag.rb:25:in `call' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/conditional_get.rb:25:in `call' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/head.rb:12:in `call' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/session/abstract/id.rb:232:in `context' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/session/abstract/id.rb:226:in `call' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/cookies.rb:613:in `call' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/callbacks.rb:38:in `block in call' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:97:in `__run_callbacks__' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:750:in `_run_call_callbacks' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/callbacks.rb:90:in `run_callbacks' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/callbacks.rb:36:in `call' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/remote_ip.rb:79:in `call' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/debug_exceptions.rb:49:in `call' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/show_exceptions.rb:31:in `call' /opt/rh/cfme-gemset/gems/railties-5.0.7/lib/rails/rack/logger.rb:36:in `call_app' /opt/rh/cfme-gemset/gems/railties-5.0.7/lib/rails/rack/logger.rb:26:in `call' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/request_id.rb:24:in `call' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/method_override.rb:22:in `call' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/runtime.rb:22:in `call' /opt/rh/cfme-gemset/gems/activesupport-5.0.7/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call' /opt/rh/cfme-gemset/gems/actionpack-5.0.7/lib/action_dispatch/middleware/executor.rb:12:in `call' /opt/rh/cfme-gemset/gems/rack-2.0.5/lib/rack/sendfile.rb:111:in `call' /opt/rh/cfme-gemset/gems/railties-5.0.7/lib/rails/engine.rb:522:in `call' /usr/share/gems/gems/puma-3.7.1/lib/puma/configuration.rb:232:in `call' /usr/share/gems/gems/puma-3.7.1/lib/puma/server.rb:578:in `handle_request' /usr/share/gems/gems/puma-3.7.1/lib/puma/server.rb:415:in `process_client' /usr/share/gems/gems/puma-3.7.1/lib/puma/server.rb:275:in `block in run' /usr/share/gems/gems/puma-3.7.1/lib/puma/thread_pool.rb:120:in `block in spawn_thread' [----] I, [2018-07-02T10:58:59.940472 #268:371dbdc] INFO -- : Rendering /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/exception.html.haml within layouts/application [----] I, [2018-07-02T10:59:00.064192 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_exception_contents.html.haml (7.5ms) [----] I, [2018-07-02T10:59:00.064488 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/exception.html.haml within layouts/application (122.4ms) [----] I, [2018-07-02T10:59:00.064972 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_doctype.html.haml (0.0ms) [----] I, [2018-07-02T10:59:00.066209 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/stylesheets/_template50.html.haml (0.0ms) [----] I, [2018-07-02T10:59:00.066968 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_i18n_js.html.haml (0.0ms) [----] I, [2018-07-02T10:59:00.068340 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_about_modal.html.haml (0.5ms) [----] I, [2018-07-02T10:59:00.072507 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_user_options.html.haml (3.1ms) [----] I, [2018-07-02T10:59:00.072885 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_notifications_drawer.html.haml (0.1ms) [----] I, [2018-07-02T10:59:00.073263 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_toast_list.html.haml (0.0ms) [----] I, [2018-07-02T10:59:00.073637 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_spinner.html.haml (0.0ms) [----] I, [2018-07-02T10:59:00.074167 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_lightbox_panel.html.haml (0.1ms) [----] I, [2018-07-02T10:59:00.074363 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_header.html.haml (6.6ms) [----] I, [2018-07-02T10:59:00.084775 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_vertical_navbar.html.haml (10.0ms) [----] I, [2018-07-02T10:59:00.088416 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/miq_v2v_ui_plugin-1fe233df296f/app/views/layouts/_full_center_v2v.html.haml (2.3ms) [----] I, [2018-07-02T10:59:00.088642 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_content.html.haml (14.0ms) [----] I, [2018-07-02T10:59:00.089247 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_adv_search.html.haml (0.0ms) [----] I, [2018-07-02T10:59:00.089512 #268:371dbdc] INFO -- : Rendered /opt/rh/cfme-gemset/bundler/gems/manageiq-ui-classic-5d59ba614c4a/app/views/layouts/_footer.html.haml (0.4ms) [----] I, [2018-07-02T10:59:00.089873 #268:371dbdc] INFO -- : Completed 500 Internal Server Error in 206ms (Views: 150.1ms | ActiveRecord: 3.9ms)
Hey Kedar, you can easily get it from sprout. You need to just choose "Openshift pod" template type and uncheck Preconfigured in request.
KK checked.. Migration page broken is not related to required yaml settings. @Brett - Target/Blocker for GA (5.9.4)?
For what it's worth, I can't reproduce this upstream. I'll give it a try with CFME 5.10.0.2 and see if I get the same result.
I can confirm that I can recreate the issue on cfme pods version 5.10.0.3, but do not see the same issue on the appliance at the same version.
Looks like the issue is that /opt/rh/cfme-gemset/bundler/gems/miq_v2v_ui_plugin-0dec3d8b7fb2/app/controllers/migration_controller.rb line 26 is shelling out to git on the command line, but git is not installed on the containers by default. The command in question is: git ls-remote https://github.com/ManageIQ/miq_v2v_ui_plugin.git #{version} Additionally, I don't think we should be relying on access to github to successfully render the migrations page. I'm not sure why this is necessary, but I'm hoping it's a temporary solution.
@Nick. I'll have to defer to Aparna and Pat Riley on this.
This is an absolute no, and must be corrected. I would consider this a blocker. In downstream appliances, a) we don't use git (we have rpms) and b) we don't necessarily have internet access, such as in government installations. This information should be provided via the API, and queried from the modal, or if the modal is generated server side, then the code should live in the VMDB::Appliance model, where we can inspect the filesystem without accessing the internet.
I think this is fixed. I checked with 5.10.0.4 pod appliance just now and I could navigate to Migration Dashboard. Ievgen, please confirm the same and close the bz.
Verified in 5.10.0.4