Bug 2090733

Summary: Overcloud export does not contain GlobalConfigExtraMapData causing DCN stack fail to deploy
Product: Red Hat OpenStack Reporter: Marian Krcmarik <mkrcmari>
Component: python-tripleoclientAssignee: James Slagle <jslagle>
Status: CLOSED ERRATA QA Contact: David Rosenfeld <drosenfe>
Severity: high Docs Contact:
Priority: high    
Version: 17.0 (Wallaby)CC: cjeanner, hbrock, jschluet, jslagle, mburns, oblaut, pweeks
Target Milestone: betaKeywords: Regression, Triaged
Target Release: 17.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-tripleoclient-16.4.1-0.20220701161515.a6cfbca.el9ost Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-09-21 12:21:38 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:

Description Marian Krcmarik 2022-05-26 13:00:36 UTC
Description of problem:
The following command for overcloud export "openstack overcloud export --force-overwrite --stack central --output-file /home/stack/central-export.yaml" does not export GlobalConfigExtraMapData which includes oslo_messaging_rpc_password and DCN stacks deployed with such export template fail on:

 FATAL | Create containers managed by Podman for /var/lib/tripleo-config/container-puppet-config/step_1 | dcn1-compute1-1 | error={"changed": false, "msg": "Failed containers: container-puppet-nova_libvirt, container-puppet-neutron"}
2022-05-25 22:41:10.859379 | 5254009d-ecd7-8e41-490a-0000000072d2 |     TIMING | tripleo_container_manage : Create containers managed by Podman for /var/lib/tripleo-config/container-puppet-config/step_1 | dcn1-compute1-1 | 0:16:57.924690 | 8.43s
2022-05-25 22:41:11.382297 |                                      |    WARNING | ERROR: Can't run container container-puppet-nova_libvirt
stderr: + logger -s -t puppet-user
+ /usr/bin/puppet apply --summarize --detailed-exitcodes --color=false --modulepath=/etc/puppet/modules:/usr/share/openstack-puppet/modules --tags '"file,file_line,concat,augeas,cron,nova_config,libvirtd_config,virtlogd_config,nova_config,file,libvirt_tls_password,libvirtd_config,nova_config,file,libvirt_tls_password"' /etc/config.pp
<13>May 25 22:41:04 puppet-user: Warning: /etc/puppet/hiera.yaml: Use of 'hiera.yaml' version 3 is deprecated. It should be converted to version 5
<13>May 25 22:41:08 puppet-user:    (file: /etc/puppet/hiera.yaml)
<13>May 25 22:41:08 puppet-user: Warning: Undefined variable '::deploy_config_name'; 
<13>May 25 22:41:08 puppet-user:    (file & line not available)
<13>May 25 22:41:08 puppet-user: Warning: The function 'hiera' is deprecated in favor of using 'lookup'. See https://puppet.com/docs/puppet/7.10/deprecated_language.html
<13>May 25 22:41:08 puppet-user:    (file & line not available)
<13>May 25 22:41:08 puppet-user: Error: Function lookup() did not find a value for the name 'oslo_messaging_rpc_password'
+ rc=1
+ '[' false = false ']'
+ set +x
2022-05-25 22:41:11.383562 |                                      |    WARNING | ERROR: Can't run container container-puppet-neutron
stderr: + logger -s -t puppet-user
+ /usr/bin/puppet apply --summarize --detailed-exitcodes --color=false --modulepath=/etc/puppet/modules:/usr/share/openstack-puppet/modules --tags '"file,file_line,concat,augeas,cron,neutron_config,ovn_metadata_agent_config"' /etc/config.pp
<13>May 25 22:41:08 puppet-user: Error: Facter: error while resolving custom fact "haproxy_version": undefined method `strip' for nil:NilClass
<13>May 25 22:41:11 puppet-user: Warning: /etc/puppet/hiera.yaml: Use of 'hiera.yaml' version 3 is deprecated. It should be converted to version 5
<13>May 25 22:41:11 puppet-user:    (file: /etc/puppet/hiera.yaml)
<13>May 25 22:41:11 puppet-user: Warning: Undefined variable '::deploy_config_name'; 
<13>May 25 22:41:11 puppet-user:    (file & line not available)
<13>May 25 22:41:11 puppet-user: Warning: The function 'hiera' is deprecated in favor of using 'lookup'. See https://puppet.com/docs/puppet/7.10/deprecated_language.html
<13>May 25 22:41:11 puppet-user:    (file & line not available)
<13>May 25 22:41:11 puppet-user: Error: Function lookup() did not find a value for the name 'oslo_messaging_rpc_password'
+ rc=1
+ '[' false = false ']'
+ set +x

It used to export the mentioned Data before the following patch was merged:
https://github.com/openstack/python-tripleoclient/commit/d7af2f54826b3086af4691753b00173dc7a95a70

Version-Release number of selected component (if applicable):
python3-tripleoclient-16.4.1-0.20220513140934.559cc8c.el9ost.noarch

How reproducible:
Always

Steps to Reproduce:
1. Deploy DCN topology with a central site (stack) and DCN site (stack).
2. First Central stack is deployed.
3. Export parameters of central stack with "openstack overcloud export" command.
4. Attach output template to DCN stach overcloud deploy command line

Actual results:
The DCN stack deployment fails on:
puppet-user: Error: Function lookup() did not find a value for the name 'oslo_messaging_rpc_password'

Expected results:


Additional info:
The output of export command even warns about missing Data - GlobalConfigExtraMapData

Comment 8 errata-xmlrpc 2022-09-21 12:21:38 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 (Release of components for Red Hat OpenStack Platform 17.0 (Wallaby)), 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/RHEA-2022:6543