Fix bug 1159: vdu can be empty in a KNF, override option must take it into account
[osm/osmclient.git] / osmclient / sol005 / vnfd.py
index 8307088..ac44495 100644 (file)
@@ -204,7 +204,8 @@ class Vnfd(object):
                 for k in vnfd:
                     # Get only the first descriptor in case there are many in the yaml file
                     # k can be vnfd:vnfd-catalog or vnfd-catalog. This check is skipped
-                    vdu_list = vnfd[k]['vnfd'][0]['vdu']
+                    first_vnfd = vnfd[k]['vnfd'][0]
+                    vdu_list = first_vnfd.get('vdu',[])
                     break;
                 for vdu_number, vdu in enumerate(vdu_list):
                     if override_epa:
@@ -253,7 +254,7 @@ class Vnfd(object):
                 if resp:
                     resp = json.loads(resp)
                 if not resp or 'id' not in resp:
-                     raise ClientException('unexpected response from server: '.format(resp))
+                     raise ClientException('unexpected response from server: {}'.format(resp))
                 print(resp['id'])
             elif http_code == 204:
                 print('Updated')