Bug 1248951

Summary: undefined method `include?' for nil:NilClass [catalog/x_button] on service catalog Add new button
Product: Red Hat CloudForms Management Engine Reporter: Aziza Karol <akarol>
Component: UI - OPSAssignee: lgalis
Status: CLOSED ERRATA QA Contact: Aziza Karol <akarol>
Severity: medium Docs Contact:
Priority: high    
Version: 5.5.0CC: hkataria, jhardy, mpovolny, obarenbo, sshveta
Target Milestone: GA   
Target Release: 5.5.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 5.5.0.1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-12-08 13:25:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
err none

Description Aziza Karol 2015-07-31 08:05:31 UTC
Created attachment 1057970 [details]
err

Description of problem:


Version-Release number of selected component (if applicable):
master.20150731024321_b987b37

How reproducible:
100%

Steps to Reproduce:
1.Navigate to service->catalogs
2.Add a new service catalog item
3.From configuration add a new button to that item

Actual results:
undefined method `include?' for nil:NilClass [catalog/x_button]  is displayed in UI when clicked on "Add a new button" . see attached screenshot

Expected results:
button should be added

Additional info:

Comment 1 Aziza Karol 2015-07-31 08:10:00 UTC
production.log:
or 127.0.0.1 at 2015-07-31 03:56:56 -0400
[----] I, [2015-07-31T04:03:55.110030 #12944:6b998c]  INFO -- : Started POST "/catalog/x_button/1?pressed=ab_button_new" for 127.0.0.1 at 2015-07-31 04:03:55 -0400
[----] I, [2015-07-31T04:03:55.114678 #12944:6b998c]  INFO -- : Processing by CatalogController#x_button as JS
[----] I, [2015-07-31T04:03:55.114778 #12944:6b998c]  INFO -- :   Parameters: {"pressed"=>"ab_button_new", "id"=>"1"}
[----] F, [2015-07-31T04:03:55.167452 #12944:6b998c] FATAL -- : Error caught: [NoMethodError] undefined method `include?' for nil:NilClass
/var/www/miq/vmdb/app/controllers/application_controller/buttons.rb:849:in `button_set_form_vars'
/var/www/miq/vmdb/app/controllers/application_controller/buttons.rb:631:in `button_new_edit'
/var/www/miq/vmdb/app/controllers/application_controller/buttons.rb:193:in `ab_button_new'
/var/www/miq/vmdb/app/controllers/catalog_controller.rb:55:in `x_button'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/abstract_controller/base.rb:198:in `process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal/rendering.rb:10:in `process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/callbacks.rb:115:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/callbacks.rb:115:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/callbacks.rb:553:in `block (2 levels) in compile'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/callbacks.rb:503:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/callbacks.rb:503:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/callbacks.rb:88:in `run_callbacks'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/abstract_controller/callbacks.rb:19:in `process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal/rescue.rb:29:in `process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/notifications.rb:164:in `block in instrument'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/notifications.rb:164:in `instrument'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activerecord-4.2.3/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/abstract_controller/base.rb:137:in `process'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionview-4.2.3/lib/action_view/rendering.rb:30:in `process'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal.rb:196:in `dispatch'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_controller/metal.rb:237:in `block in action'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/routing/route_set.rb:76:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/routing/route_set.rb:76:in `dispatch'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/routing/route_set.rb:45:in `serve'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/journey/router.rb:43:in `block in serve'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/journey/router.rb:30:in `each'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/journey/router.rb:30:in `serve'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/routing/route_set.rb:821:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/etag.rb:24:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/conditionalget.rb:38:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/head.rb:13:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/flash.rb:260:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:in `context'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/cookies.rb:560:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activerecord-4.2.3/lib/active_record/query_cache.rb:36:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activerecord-4.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/callbacks.rb:84:in `run_callbacks'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/rack/logger.rb:38:in `call_app'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/rack/logger.rb:22:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/request_store-1.2.0/lib/request_store/middleware.rb:8:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/request_id.rb:21:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/runtime.rb:18:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-4.2.3/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/lock.rb:17:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/static.rb:116:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/sendfile.rb:113:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/engine.rb:518:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/application.rb:165:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/content_length.rb:15:in `call'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/thin-1.3.1/lib/thin/connection.rb:80:in `block in pre_process'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/thin-1.3.1/lib/thin/connection.rb:78:in `catch'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/thin-1.3.1/lib/thin/connection.rb:78:in `pre_process'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/thin-1.3.1/lib/thin/connection.rb:53:in `process'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/thin-1.3.1/lib/thin/connection.rb:38:in `receive_data'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in `run_machine'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in `run'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/thin-1.3.1/lib/thin/backends/base.rb:61:in `start'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/thin-1.3.1/lib/thin/server.rb:159:in `start'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/handler/thin.rb:19:in `run'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/rack-1.6.4/lib/rack/server.rb:286:in `start'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/commands/server.rb:80:in `start'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:80:in `block in server'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:75:in `tap'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:75:in `server'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
/opt/rubies/ruby-2.2.2/lib/ruby/gems/2.2.0/gems/railties-4.2.3/lib/rails/commands.rb:17:in `<top (required)>'
/var/www/miq/vmdb/bin/rails:4:in `require'
/var/www/miq/vmdb/bin/rails:4:in `<main>'

Comment 4 CFME Bot 2015-08-06 17:27:17 UTC
New commit detected on manageiq/master:
https://github.com/ManageIQ/manageiq/commit/1a4fc0a1bb813732b34182719e2931f2378fd5fc

commit 1a4fc0a1bb813732b34182719e2931f2378fd5fc
Author:     Laura Galis <lgalis>
AuthorDate: Fri Jul 31 13:44:19 2015 -0400
Commit:     Laura Galis <lgalis>
CommitDate: Wed Aug 5 16:21:00 2015 -0400

    After changes to replace the @temp vars, adding a new custom button fails
    
    https://github.com/ManageIQ/manageiq/pull/3449
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1248951

 app/views/shared/buttons/_ab_form.html.haml        |  2 +-
 .../custom_buttons_spec.rb                         | 31 ++++++++++++++++++++++
 2 files changed, 32 insertions(+), 1 deletion(-)

Comment 5 CFME Bot 2015-08-06 17:34:14 UTC
New commit detected on manageiq/master:
https://github.com/ManageIQ/manageiq/commit/1a4fc0a1bb813732b34182719e2931f2378fd5fc

commit 1a4fc0a1bb813732b34182719e2931f2378fd5fc
Author:     Laura Galis <lgalis>
AuthorDate: Fri Jul 31 13:44:19 2015 -0400
Commit:     Laura Galis <lgalis>
CommitDate: Wed Aug 5 16:21:00 2015 -0400

    After changes to replace the @temp vars, adding a new custom button fails
    
    https://github.com/ManageIQ/manageiq/pull/3449
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1248951

 app/views/shared/buttons/_ab_form.html.haml        |  2 +-
 .../custom_buttons_spec.rb                         | 31 ++++++++++++++++++++++
 2 files changed, 32 insertions(+), 1 deletion(-)

Comment 6 Shveta 2015-09-01 00:55:26 UTC
Verified in master.20150831201655_178618c

Comment 7 Aziza Karol 2015-09-16 11:07:36 UTC
Verified in master.20150916002314_4e04cf0

Comment 8 Aziza Karol 2015-09-18 10:30:41 UTC
Verified in 5.5.0.1-alpha1.20150915151429_2230bd4.

Comment 10 errata-xmlrpc 2015-12-08 13:25:11 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2015:2551