Fix test_allocate_ips_are_from_correct_subnet on ML2/OVN backend

In case of ML2/OVN, driver creates additional network:distributed port
for each subnet with enabled DHCP. That caused failures of that test
in the ML2/OVN environment as subnets created in the test had only some
specified service_type thus Neutron couldn't find any IP address to
allocate for the "network:distributed" port.
Now it's fixed by adding "network:distributed" service_type to both
subnets.

Closes-Bug: #1934622
Change-Id: Ifc2c75abd49209625065de6fece413aed0bb7a4e
This commit is contained in:
Slawek Kaplonski 2021-07-06 13:50:17 +02:00
parent 9c59654902
commit 9115c8e4af
1 changed files with 12 additions and 6 deletions

View File

@ -86,12 +86,18 @@ class SubnetServiceTypeTestJSON(base.BaseNetworkTest):
cidr_1 = netaddr.IPNetwork('192.168.1.0/24')
cidr_2 = netaddr.IPNetwork('192.168.2.0/24')
self.create_subnet(self.network,
service_types=['test:type_1'],
cidr=str(cidr_1))
self.create_subnet(self.network,
service_types=['test:type_2'],
cidr=str(cidr_2))
# NOTE(slaweq): service_type "network:distributed" is needed for
# ML2/OVN backend. It's needed because OVN driver creates additional
# port for metadata service in each subnet with enabled dhcp and such
# port needs to have allocated IP address from the subnet also.
self.create_subnet(
self.network,
service_types=['test:type_1', 'network:distributed'],
cidr=str(cidr_1))
self.create_subnet(
self.network,
service_types=['test:type_2', 'network:distributed'],
cidr=str(cidr_2))
port_type_1 = self.create_port(self.network,
device_owner="test:type_1")
port_type_2 = self.create_port(self.network,