bug 664: Allow 'pending' for N2VC.GetPrimitiveStatus
[osm/LCM.git] / osm_lcm / ns.py
index 98c9968..e761d76 100644 (file)
@@ -69,9 +69,9 @@ def populate_dict(target_dict, key_list, value):
 
 class NsLcm(LcmBase):
     timeout_vca_on_error = 5 * 60   # Time for charm from first time at blocked,error status to mark as failed
-    total_deploy_timeout = 30 * 60   # global timeout for deployment
-    timeout_charm_delete = 5 * 60
-    timeout_primitive = 5 * 60  # timeout for primitive execution
+    total_deploy_timeout = 2 * 3600   # global timeout for deployment
+    timeout_charm_delete = 10 * 60
+    timeout_primitive = 10 * 60  # timeout for primitive execution
 
     def __init__(self, db, msg, fs, lcm_tasks, ro_config, vca_config, loop):
         """
@@ -577,6 +577,8 @@ class NsLcm(LcmBase):
                         vdur["vim-id"] = vdur_RO.get("vim_vm_id")
                         if vdur_RO.get("ip_address"):
                             vdur["ip-address"] = vdur_RO["ip_address"].split(";")[0]
+                        else:
+                            vdur["ip-address"] = None
                         vdur["vdu-id-ref"] = vdur_RO.get("vdu_osm_id")
                         vdur["name"] = vdur_RO.get("vim_name")
                         vdur["status"] = vdur_RO.get("status")
@@ -1447,7 +1449,7 @@ class NsLcm(LcmBase):
             )
             while time() - start_primitive_time < self.timeout_primitive:
                 primitive_result_ = await self.n2vc.GetPrimitiveStatus(model_name, primitive_id)
-                if primitive_result_ == "running":
+                if primitive_result_ in ("running", "pending"):
                     pass
                 elif primitive_result_ in ("completed", "failed"):
                     primitive_result = "COMPLETED" if primitive_result_ == "completed" else "FAILED"