Bug 1596853 - Puppet class fails loading in UI when the attribute order is created with upper case characters
Summary: Puppet class fails loading in UI when the attribute order is created with upp...
Status: VERIFIED
Alias: None
Product: Red Hat Satellite 6
Classification: Red Hat
Component: Smart Variables
Version: 6.3.1
Hardware: Unspecified
OS: Unspecified
high
high vote
Target Milestone: 6.6.0
Assignee: orabin
QA Contact: vijsingh
URL:
Whiteboard:
Keywords: Triaged, UserExperience
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-06-29 19:37 UTC by sthirugn@redhat.com
Modified: 2019-06-27 18:28 UTC (History)
5 users (show)

(edit)
Clone Of:
(edit)
Last Closed:


Attachments (Terms of Use)
puppet class UI error (23.25 KB, image/png)
2018-06-29 19:37 UTC, sthirugn@redhat.com
no flags Details


External Trackers
Tracker ID Priority Status Summary Last Updated
Foreman Issue Tracker 24551 None None None 2018-08-06 20:02 UTC

Description sthirugn@redhat.com 2018-06-29 19:37:20 UTC
Description of problem:
Puppet class fails loading in UI when the attribute order is created with upper case characters

Version-Release number of selected component (if applicable):
satellite-6.3.1-3.el7sat.noarch

How reproducible:
Always

Steps to Reproduce:
1. Navigate to the Satellite UI -> Configure -> Classes
2. Select a puppet class -> Smart Class Parameter.  Add a new added a new `Prioritize attribute order` with some upper case letters on it. eg., `test_version,GSD-ALL-00-OB_N_ABCDE01`. Add a matcher at the same time with some values. eg., `test_version=4.1.0,GSD-ALL-00-OB_N_ABCDE01=true` in the same UI transaction.
3. Click Submit.

Actual results:
The order and matcher would be created, but the puppet class cannot be loaded in Satellite UI anymore. Reason: The lookup_keys table changed the order to all lowercase and stored it. The lookup_values table saved the original upper case letters. This caused inconsistency between the tables and broke the UI.

Expected results:
Either do not allow upper case letters in `Prioritize attribute order` field or save all lower case in lookup_values table too - to keep the data consistent.

Additional info:

Comment 1 sthirugn@redhat.com 2018-06-29 19:37 UTC
Created attachment 1455569 [details]
puppet class UI error

Comment 4 orabin 2018-08-06 20:02:47 UTC
Created redmine issue https://projects.theforeman.org/issues/24551 from this bug

Comment 5 pm-sat@redhat.com 2018-08-06 22:16:06 UTC
Upstream bug assigned to orabin@redhat.com

Comment 6 pm-sat@redhat.com 2018-08-06 22:16:09 UTC
Upstream bug assigned to orabin@redhat.com

Comment 7 pm-sat@redhat.com 2018-12-25 17:08:38 UTC
Moving this bug to POST for triage into Satellite 6 since the upstream issue https://projects.theforeman.org/issues/24551 has been resolved.

Comment 8 vijsingh 2019-05-30 08:35:25 UTC
ON_QA verified 

@Satellite 6.6.0 snap 4.0

Steps:

 1. Navigate to the Satellite UI -> Configure -> Classes
 2. Select a puppet class -> Smart Class Parameter. > check mark on `Default Behavior` 'Override' -> Add a new `Prioritize attribute order` with some upper case letters on it. eg., `test_version,GSD-ALL-00-OB_N_ABCDE01`. Add a matcher at the same time with some values. eg., `test_version=4.1.0,GSD-ALL-00-OB_N_ABCDE01=true` in the same UI transaction.
 3. Click Submit.

Observation:

 1. Saved all lookup_values in lower case.
 2. Puppet class loading in UI


Note You need to log in before you can comment on or make changes to this bug.