Description of problem: Clicking a custom button on a Virtual Infra Switch object does not display the button's dialog. The following stack trace is found in production.log: [----] I, [2019-03-05T08:08:27.922820 #15547:3b213c8] INFO -- : Started POST "/infra_networking/button/37000000000004" for 127.0.0.1 at 2019-03-05 08:08:27 -0500 [----] I, [2019-03-05T08:08:27.925789 #15547:3b213c8] INFO -- : Processing by InfraNetworkingController#button as JS [----] I, [2019-03-05T08:08:27.925840 #15547:3b213c8] INFO -- : Parameters: {"button_id"=>"37000000000001", "cls"=>"ManageIQ::Providers::Vmware::InfraManager::DistributedVirtualSwitch", "desc"=>"Walk Object", "id"=>"37000000000004", "pressed"=>"custom_button"} [----] F, [2019-03-05T08:08:27.955461 #15547:3b213c8] FATAL -- : Error caught: [ArgumentError] wrong number of arguments (given 0, expected 1) /opt/rh/cfme-gemset/bundler/gems/cfme-ui-classic-93aeb5552460/app/controllers/mixins/custom_button_dialog_form_mixin.rb:3:in `set_custom_button_dialog_presenter' /opt/rh/cfme-gemset/bundler/gems/cfme-ui-classic-93aeb5552460/app/controllers/infra_networking_controller.rb:351:in `replace_right_cell' /opt/rh/cfme-gemset/bundler/gems/cfme-ui-classic-93aeb5552460/app/controllers/application_controller/dialog_runner.rb:167:in `dialog_initialize' /opt/rh/cfme-gemset/bundler/gems/cfme-ui-classic-93aeb5552460/app/controllers/application_controller/buttons.rb:329:in `custom_buttons' /opt/rh/cfme-gemset/bundler/gems/cfme-ui-classic-93aeb5552460/app/controllers/infra_networking_controller.rb:146:in `button' /opt/rh/cfme-gemset/gems/actionpack-5.0.7.1/lib/action_controller/metal/basic_implicit_render.rb:4:in `send_action' ... Version-Release number of selected component (if applicable): 5.10.0.32 How reproducible: Every time Steps to Reproduce: On a CloudForms system that has a VMware provider containing at least 1 distributed switch... 1. Create a simple service dialog containing a single text box. 2. Create a custom button group and button (Default button type) on the "Virtual Infra Switch" object type. The button should use the newly created dialog, and run /System/Process/Request and "InspectMe" as the request when submitted. 3. Navigate to the Compute -> Infrastructure -> Networking section of the WebUI, and click on one of the switches listed 4. Locate the button group and click the custom button Actual results: The button's dialog fails to load. A stack trace is seen in production.log Expected results: The button's dialog should load. Additional info:
https://github.com/ManageIQ/manageiq-ui-classic/pull/6225
New commit detected on ManageIQ/manageiq-ui-classic/master: https://github.com/ManageIQ/manageiq-ui-classic/commit/3afda6d64bae208db24462e997ce0efe7e3f021d commit 3afda6d64bae208db24462e997ce0efe7e3f021d Author: Erik Clarizio <eclarizio> AuthorDate: Mon Sep 23 11:01:59 2019 -0400 Commit: Erik Clarizio <eclarizio> CommitDate: Mon Sep 23 11:01:59 2019 -0400 Fix ArgumentError with set_custom_button_dialog_presenter Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1685555 app/controllers/infra_networking_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)