diff options
author | zhaolihui <zhaolh@awcloud.com> | 2018-07-12 11:12:54 +0000 |
---|---|---|
committer | Takashi NATSUME <natsume.takashi@lab.ntt.co.jp> | 2018-12-13 07:50:37 +0000 |
commit | b13ba0138f6ee2e10ce3b4b95aee37c6cebd1f20 (patch) | |
tree | 9f6345192bcf459868e01c754bdea75aca011df7 /novaclient/v2/servers.py | |
parent | a789bd30ae07eff636e6ea3da4d5d8f9d46e8ff1 (diff) | |
download | python-novaclient-b13ba0138f6ee2e10ce3b4b95aee37c6cebd1f20.tar.gz |
Fix flavor keyerror when nova boot vm
When creating a server (the 'nova boot' command),
it calls 'POST /servers' API.
The response does not have 'addresses' and 'flavor' attributes.
When accessing 'networks' attribute in the '_print_server' function,
it calls 'GET /servers/{server_id}' and get the 'addresses' and
'flavor' attributes.
If 'GET /servers/{server_id}' fails, the server object does not have
the 'flavor' attribute, then KeyError is raised when accessing it.
Fix the issue by making it raise a CommandError
when the 'GET /servers/{server_id}' fails.
Co-Authored-By: Takashi Natsume <natsume.takashi@lab.ntt.co.jp>
Change-Id: I3ef096c61b0e05a637ab0c4a1027338fa87e4f09
Closes-Bug: #1781368
Diffstat (limited to 'novaclient/v2/servers.py')
-rw-r--r-- | novaclient/v2/servers.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/novaclient/v2/servers.py b/novaclient/v2/servers.py index 98f22ba2..0843e4e3 100644 --- a/novaclient/v2/servers.py +++ b/novaclient/v2/servers.py @@ -405,7 +405,7 @@ class Server(base.Resource): for network_label, address_list in self.addresses.items(): networks[network_label] = [a['addr'] for a in address_list] return networks - except Exception: + except AttributeError: return {} @api_versions.wraps("2.0", "2.24") |