Overcloud deployment or upgrade prepare fails due to AttributeError: 'NoneType' object has no attribute 'keys'

Solution Verified - Updated -

Issue

  • openstack overcloud deploy or openstack overcloud upgrade prepare fails with AttributeError: 'NoneType' object has no attribute 'keys' error.

    2023-09-15 09:54:39.643 150830 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml
    2023-09-15 09:54:39.643 150830 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml
    /usr/lib/python3.9/site-packages/heatclient/common/template_utils.py:206: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working 
      if isinstance(v, collections.Mapping):
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: AttributeError: 'NoneType' object has no attribute 'keys'
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud   File "/usr/lib/python3.9/site-packages/tripleoclient/command.py", line 32, in run
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud     super(Command, self).run(parsed_args)
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud   File "/usr/lib/python3.9/site-packages/osc_lib/command/command.py", line 39, in run
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud     return super(Command, self).run(parsed_args)
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud   File "/usr/lib/python3.9/site-packages/cliff/command.py", line 186, in run 
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud     return_code = self.take_action(parsed_args) or 0
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud   File "/usr/lib/python3.9/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1161, in take_action
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud     created_env_files = self.create_env_files(
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud   File "/usr/lib/python3.9/site-packages/tripleoclient/v1/overcloud_deploy.py", line 261, in create_env_files
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud     utils.check_prohibited_overrides(protected_overrides,
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud   File "/usr/lib/python3.9/site-packages/tripleoclient/utils.py", line 2916, in check_prohibited_overrides
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud     registry = set(data.get('resource_registry', {}).keys())
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud AttributeError: 'NoneType' object has no attribute 'keys'
    2023-09-15 09:54:42.962 150830 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud
    2023-09-15 09:54:43.011 150830 ERROR openstack [-] 'NoneType' object has no attribute 'keys'
    2023-09-15 09:54:43.011 150830 INFO osc_lib.shell [-] END return value: 1
    

Environment

  • Red Hat OpenStack Platform 17.0
  • Red Hat OpenStack Platform 17.1

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content