From a8846ad60a82774d59423ce8cdec60a21d1223d5 Mon Sep 17 00:00:00 2001 From: Kobi Samoray Date: Wed, 28 Apr 2021 14:28:48 +0300 Subject: [PATCH] Octavia driver: rule list can be None in L7 policy While converting an Octavia L7 rule object to a dict, the code should handle the case when a L7 policy that is nested beneath the rule has a None rule list. Change-Id: Icae93a9e1cb1d5f09f4952fdfc1c2a1e3ad29123 --- vmware_nsx/services/lbaas/octavia/octavia_driver.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/vmware_nsx/services/lbaas/octavia/octavia_driver.py b/vmware_nsx/services/lbaas/octavia/octavia_driver.py index 249bd15625..deba6f98be 100644 --- a/vmware_nsx/services/lbaas/octavia/octavia_driver.py +++ b/vmware_nsx/services/lbaas/octavia/octavia_driver.py @@ -378,6 +378,8 @@ class NSXOctaviaDriver(driver_base.ProviderDriver): # During create operations, the created rule will not be # retrieved from Octavia DB, as it is updated later on + if policy_dict.get('rules') is None: + policy_dict['rules'] = [] if (obj_dict['l7rule_id'] not in [r['l7rule_id'] for r in policy_dict.get('rules', [])]):