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...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Smart Variables
Version: 6.3.1
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: 6.6.0
Assignee: orabin
QA Contact: vijsingh
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-06-29 19:37 UTC by sthirugn@redhat.com
Modified: 2023-09-07 19:13 UTC (History)
5 users (show)

Fixed In Version: foreman-1.21.0-0
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-10-22 19:51:50 UTC
Target Upstream Version:
Embargoed:


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


Links
System ID Private Priority Status Summary Last Updated
Foreman Issue Tracker 24551 0 None None None 2018-08-06 20:02:49 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:49 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 Satellite Program 2018-08-06 22:16:06 UTC
Upstream bug assigned to orabin

Comment 6 Satellite Program 2018-08-06 22:16:09 UTC
Upstream bug assigned to orabin

Comment 7 Satellite Program 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

Comment 12 Bryan Kearney 2019-10-22 19:51:50 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-2019:3172


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