Before this update, the `ExtraConfigPre` `per_node` script was not compatible with Python 3. As a result, the overcloud deployment failed at the step `TASK [Run deployment NodeSpecificDeployment]` with the message `SyntaxError: invalid syntax`.
+
With this update, the `ExtraConfigPre` `per_node` script is compatible with Python 3 and you can provision custom `per_node` hieradata.
Enabling per_node ExtraConfigPre will cause error on deployments because the embedded python code doesn't work with py3
For example:
print json.dumps(cnt.get('4C4C4544-0059-4610-8032-C7C04F584B32', {}))
If this bug requires doc text for errata release, please set the 'Doc Type' and provide draft text according to the template in the 'Doc Text' field. The documentation team will review, edit, and approve the text.
If this bug does not require doc text, please set the 'requires_doc_text' flag to '-'.
Verified by creating ceph-osd-config.yaml file that contained:
resource_registry:
OS::TripleO::CephStorageExtraConfigPre: /usr/share/openstack-tripleo-heat-templates/puppet/extraconfig/pre_deploy/per_node.yaml
and some parameter_defaults.
Added -e /home/stack/templates/ceph-osd-config.yaml to deployment command. After executing deployment the error: 'SyntaxError: invalid syntax' was no longer seen in the step:
TASK [Run deployment NodeSpecificDeployment]
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/RHBA-2020:3148
Enabling per_node ExtraConfigPre will cause error on deployments because the embedded python code doesn't work with py3 For example: print json.dumps(cnt.get('4C4C4544-0059-4610-8032-C7C04F584B32', {}))