From 7c9cb9dcb9afad092fef9bdcf527a12fdc121695 Mon Sep 17 00:00:00 2001 From: Adam Harwell Date: Mon, 20 May 2019 17:56:40 -0700 Subject: [PATCH] Add 'additional_vips' field to driver datamodel Story: 2005608 Task: 33612 Change-Id: Ie1e2532f3aa9dca542ddeee120002e11d0f9f0b1 --- .gitignore | 4 ++++ octavia_lib/api/drivers/data_models.py | 3 ++- octavia_lib/tests/unit/api/drivers/test_data_models.py | 2 ++ .../notes/add-additional-vip-support-becdb29c5187b514.yaml | 5 +++++ 4 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/add-additional-vip-support-becdb29c5187b514.yaml diff --git a/.gitignore b/.gitignore index 4cbb844..b9d6123 100644 --- a/.gitignore +++ b/.gitignore @@ -59,3 +59,7 @@ ChangeLog # Files created by releasenotes build releasenotes/build + +# IDEs +.idea/* +.vscode/* diff --git a/octavia_lib/api/drivers/data_models.py b/octavia_lib/api/drivers/data_models.py index ce88b85..1cf2f51 100644 --- a/octavia_lib/api/drivers/data_models.py +++ b/octavia_lib/api/drivers/data_models.py @@ -106,7 +106,7 @@ class LoadBalancer(BaseDataModel): listeners=Unset, loadbalancer_id=Unset, name=Unset, pools=Unset, project_id=Unset, vip_address=Unset, vip_network_id=Unset, vip_port_id=Unset, vip_subnet_id=Unset, - vip_qos_policy_id=Unset): + vip_qos_policy_id=Unset, additional_vips=Unset): self.admin_state_up = admin_state_up self.description = description @@ -121,6 +121,7 @@ class LoadBalancer(BaseDataModel): self.vip_port_id = vip_port_id self.vip_subnet_id = vip_subnet_id self.vip_qos_policy_id = vip_qos_policy_id + self.additional_vips = additional_vips class Listener(BaseDataModel): diff --git a/octavia_lib/tests/unit/api/drivers/test_data_models.py b/octavia_lib/tests/unit/api/drivers/test_data_models.py index b3d1e59..5238113 100644 --- a/octavia_lib/tests/unit/api/drivers/test_data_models.py +++ b/octavia_lib/tests/unit/api/drivers/test_data_models.py @@ -362,6 +362,7 @@ class TestProviderDataModels(base.TestCase): new_ref_lib_dict = deepcopy(self.ref_lb_dict) new_ref_lib_dict['pools'] = None new_ref_lib_dict['listeners'] = None + new_ref_lib_dict['additional_vips'] = None self.assertEqual(new_ref_lib_dict, ref_lb_converted_to_dict) @@ -409,6 +410,7 @@ class TestProviderDataModels(base.TestCase): ref_lb_dict_with_listener = deepcopy(self.ref_lb_dict_with_listener) ref_lb_dict_with_listener['pools'] = None ref_lb_dict_with_listener['name'] = None + ref_lb_dict_with_listener['additional_vips'] = None ref_lb_converted_to_dict = ref_lb.to_dict(recurse=True, render_unsets=True) diff --git a/releasenotes/notes/add-additional-vip-support-becdb29c5187b514.yaml b/releasenotes/notes/add-additional-vip-support-becdb29c5187b514.yaml new file mode 100644 index 0000000..dfa5de4 --- /dev/null +++ b/releasenotes/notes/add-additional-vip-support-becdb29c5187b514.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + Add the ability to pass multiple VIP objects to providers. This allows for + multiple subnets/IPs on a single LB.