Bug 1107604

Summary: 404 Bad request in production.log: On clicking "Perform" button when no package name was specified
Product: Red Hat Satellite Reporter: Sachin Ghai <sghai>
Component: WebUIAssignee: Brad Buckingham <bbuckingham>
Status: CLOSED CURRENTRELEASE QA Contact: sthirugn <sthirugn>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.0.3CC: bbuckingham, jmontleo, sthirugn
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
URL: http://projects.theforeman.org/issues/6515
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-09-11 12:27:21 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
Logs from production.log none

Description Sachin Ghai 2014-06-10 10:47:14 UTC
Created attachment 907150 [details]
Logs from production.log

Description of problem:
I was trying to install package on selected content-host. But found that the "Perform" button was active/enabled even no package name was specified in text box. 

Also, If I click on "Perform" button without specifying package name, nothing happens on UI, but production.log filled up with a long execption:

Processing by Katello::Api::V2::SystemPackagesController#install as JSON
  Parameters: {"uuid"=>"67a61af0-2cc9-48cf-96ad-68852b0d5875", "packages"=>[""], "api_version"=>"v2", "system_id"=>"67a61af0-2cc9-48cf-96ad-68852b0d5875", "system_package"=>{"uuid"=>"67a61af0-2cc9-48cf-96ad-68852b0d5875", "packages"=>[""]}}
Katello::HttpErrors::BadRequest:  is not a valid package name
/opt/rh/ruby193/root/usr/share/gems/gems/katello-1.5.0/app/controllers/katello/api/v2/system_packages_controller.rb:92:in `block in validate_package_list_format'
/opt/rh/ruby193/root/usr/share/gems/gems/katello-1.5.0/app/controllers/katello/api/v2/system_packages_controller.rb:90:in `each'
/opt/rh/ruby193/root/usr/share/gems/gems/katello-1.5.0/app/controllers/katello/api/v2/system_packages_controller.rb:90:in `validate_package_list_format'


Version-Release number of selected component (if applicable):
sat6 beta snap8 (Satellite-6.0.3-RHEL-6-20140604.0)

How reproducible:
always

Steps to Reproduce:
1. go to content-host --> select registered system --> Packages --> select package actions --> Perform
2.
3.

Actual results:
Also, If I click on "Perform" button without specifying package name, nothing happens on UI, but production.log filled up with a long execption:

Expected results:
Perform button needs to be disabled, when no package/group name is defined

Additional info:

Comment 1 RHEL Program Management 2014-06-10 11:05:11 UTC
Since this issue was entered in Red Hat Bugzilla, the release flag has been
set to ? to ensure that it is properly evaluated for this release.

Comment 3 Brad Buckingham 2014-07-07 19:19:59 UTC
Created redmine issue http://projects.theforeman.org/issues/6515 from this bug

Comment 4 Brad Buckingham 2014-07-07 19:43:22 UTC
Proposed fix in Katello PR: 
   https://github.com/Katello/katello/pull/4398

Comment 5 Brad Buckingham 2014-07-08 10:25:57 UTC
'Perform' button is now disabled, unless the user has entered something in the input box.

Comment 7 sthirugn@redhat.com 2014-08-10 04:57:25 UTC
Verified. Now Perform button is disabled until a package number is entered.

Version Tested:
GA Snap 4 - Satellite-6.0.4-RHEL-6-20140806.0

* apr-util-ldap-1.3.9-3.el6_0.1.x86_64
* candlepin-0.9.19-1.el6_5.noarch
* candlepin-scl-1-5.el6_4.noarch
* candlepin-scl-quartz-2.1.5-5.el6_4.noarch
* candlepin-scl-rhino-1.7R3-1.el6_4.noarch
* candlepin-scl-runtime-1-5.el6_4.noarch
* candlepin-selinux-0.9.19-1.el6_5.noarch
* candlepin-tomcat6-0.9.19-1.el6_5.noarch
* elasticsearch-0.90.10-4.el6sat.noarch
* foreman-1.6.0.38-1.el6sat.noarch
* foreman-compute-1.6.0.38-1.el6sat.noarch
* foreman-gce-1.6.0.38-1.el6sat.noarch
* foreman-libvirt-1.6.0.38-1.el6sat.noarch
* foreman-ovirt-1.6.0.38-1.el6sat.noarch
* foreman-postgresql-1.6.0.38-1.el6sat.noarch
* foreman-proxy-1.6.0.23-1.el6sat.noarch
* foreman-selinux-1.6.0.4-1.el6sat.noarch
* foreman-vmware-1.6.0.38-1.el6sat.noarch
* katello-1.5.0-28.el6sat.noarch
* katello-ca-1.0-1.noarch
* katello-certs-tools-1.5.6-1.el6sat.noarch
* katello-installer-0.0.57-1.el6sat.noarch
* openldap-2.4.23-34.el6_5.1.x86_64
* pulp-katello-0.3-3.el6sat.noarch
* pulp-nodes-common-2.4.0-0.30.beta.el6sat.noarch
* pulp-nodes-parent-2.4.0-0.30.beta.el6sat.noarch
* pulp-puppet-plugins-2.4.0-0.30.beta.el6sat.noarch
* pulp-puppet-tools-2.4.0-0.30.beta.el6sat.noarch
* pulp-rpm-plugins-2.4.0-0.30.beta.el6sat.noarch
* pulp-selinux-2.4.0-0.30.beta.el6sat.noarch
* pulp-server-2.4.0-0.30.beta.el6sat.noarch
* python-ldap-2.3.10-1.el6.x86_64
* ruby193-rubygem-net-ldap-0.3.1-3.el6sat.noarch
* ruby193-rubygem-runcible-1.1.0-2.el6sat.noarch
* sssd-ldap-1.11.5.1-3.el6.x86_64

Comment 9 Bryan Kearney 2014-09-11 12:27:21 UTC
This was delivered with Satellite 6.0 which was released on 10 September 2014.