Bug 1933160

Summary: When importing multiple ansible role variables in satellite that have the same variable name, they are silently overwritten.
Product: Red Hat Satellite Reporter: James Jeffers <jjeffers>
Component: Ansible - Configuration ManagementAssignee: Ondřej Ezr <oezr>
Status: CLOSED ERRATA QA Contact: Lukas Pramuk <lpramuk>
Severity: high Docs Contact:
Priority: high    
Version: 6.6.0CC: ahumbe, dleroux, ktordeur, oezr, satellite6-bugs, tbrisker, zhunting
Target Milestone: 6.8.5Keywords: PrioBumpGSS, Triaged
Target Release: Unused   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: foreman_ansible-5.1.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1777293 Environment:
Last Closed: 2021-03-31 19:48:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Comment 2 Lukas Pramuk 2021-03-11 12:28:29 UTC
VERIFIED.

@Satellite 6.8.5 Snap1
tfm-rubygem-foreman_ansible-5.1.3.2-1.el7sat.noarch

by the following reproducer:

1) Install any role from galaxy
# ansible-galaxy install -p /etc/ansible/roles adriagalin.motd

2) Import the role and its variables
# hammer ansible roles import --proxy-id 1
# hammer ansible variables import --proxy-id 1

3) Craft a role with duplicate variable names to be imported
# cp -r /etc/ansible/roles/adriagalin.motd /etc/ansible/roles/lpramuk.motd

4) Import the crafted role and its variables
# hammer ansible roles import --proxy-id 1
# hammer ansible variables import --proxy-id 1

5) Check the imported variables
# hammer ansible variables list --search ag_motd
----|-----------------------------|----------------------------------------------------------------------------------|---------|----------------
ID  | VARIABLE                    | DEFAULT VALUE                                                                    | TYPE    | ROLE           
----|-----------------------------|----------------------------------------------------------------------------------|---------|----------------
117 | ag_motd_add_footer          | false                                                                            | boolean | adriagalin.motd
163 | ag_motd_add_footer          | false                                                                            | boolean | lpramuk.motd   
167 | ag_motd_content             |                                                                                  | string  | lpramuk.motd   
121 | ag_motd_content             |                                                                                  | string  | adriagalin.motd
166 | ag_motd_info                | [{" FQDN:    "=>"{{ ansible_fqdn }}"}, {" Distro:  "=>"{{ ansible_distributio... | array   | lpramuk.motd   
120 | ag_motd_info                | [{"FQDN: "=>"{{ ansible_fqdn }}"}, {"  OS: "=>"{{ ansible_distribution }}"}]     | array   | adriagalin.motd
119 | ag_motd_sysadmins_email     | random                                                                | string  | adriagalin.motd
165 | ag_motd_sysadmins_email     | random                                                                | string  | lpramuk.motd   
118 | ag_motd_sysadmins_signature | Random system administrators                                                     | string  | adriagalin.motd
164 | ag_motd_sysadmins_signature | Random system administrators                                                     | string  | lpramuk.motd   
----|-----------------------------|----------------------------------------------------------------------------------|---------|----------------

>>> every variable is listed twice, one variable per each role -> duplicate variables in different roles are no longer overwritten

Comment 7 errata-xmlrpc 2021-03-31 19:48:19 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 (Satellite 6.8.5 Async Bug Fix Update), 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/RHBA-2021:1057