Teflo no longer works with python-openstackclient 5.5.0 released over this past weekend. The behavior of the client library with respect to networks has changed, as per this release note from the library:
"The networks and properties fields of the server list command will now be rendered as objects. In addition, the power_state field will now be humanized and rendered as a string value when using the table formatter."
2021-03-23 10:00:31,807 ERROR [teflo.tasks.provision.run:67] Failed to provision asset psi-c0-osp16-test-autobot-ceph-mon
2021-03-23 10:00:31,808 ERROR [teflo.tasks.provision.run:69] 'dict' object has no attribute 'replace'
2021-03-23 10:00:31,809 ERROR [blaster.blast.run:90] A exception was raised while processing task: psi-c0-osp16-test-autobot-ceph-mon method: run
Traceback (most recent call last):
File "/var/home/ghelling/src/oasis/C0/.tox/teflo/lib/python3.9/site-packages/blaster/blast.py", line 83, in run
value = getattr(task_obj, method)()
File "/var/home/ghelling/src/oasis/C0/.tox/teflo/lib/python3.9/site-packages/teflo/tasks/provision.py", line 65, in run
return self.provisioner.create()
File "/var/home/ghelling/src/oasis/C0/.tox/teflo/lib/python3.9/site-packages/teflo/provisioners/asset_provisioner.py", line 86, in create
res = self.plugin.create()
File "/var/home/ghelling/src/oasis/C0/.tox/teflo/lib/python3.9/site-packages/teflo_openstack_client_plugin/os_client_provisioner.py", line 363, in create
results.extend(self._process_create_results(result, cp_opt, name))
File "/var/home/ghelling/src/oasis/C0/.tox/teflo/lib/python3.9/site-packages/teflo_openstack_client_plugin/os_client_provisioner.py", line 226, in _process_create_results
resp = generate_cbn_response(resp, self.config_params.get('public_network', None))
File "/var/home/ghelling/src/oasis/C0/.tox/teflo/lib/python3.9/site-packages/teflo_openstack_client_plugin/helpers/os_client_helper.py", line 109, in generate_cbn_response
ip_add = parse_network_addresses_to_dict(r, public_net_key)
File "/var/home/ghelling/src/oasis/C0/.tox/teflo/lib/python3.9/site-packages/teflo_openstack_client_plugin/helpers/os_client_helper.py", line 133, in parse_network_addresses_to_dict
addresses = json_resp.get('addresses').replace(' ', '').split(';')
AttributeError: 'dict' object has no attribute 'replace'