From e9fc7e77eaf4ee79ca50811079c837e861d505aa 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 e9a5f5dace..deb85747fb 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', [])]):