Merge "Add SR-IOV bridge mappings for DHCP support"

This commit is contained in:
Zuul
2025-06-05 21:38:38 +00:00
committed by Gerrit Code Review

View File

@@ -153,7 +153,7 @@ class NeutronHelm(openstack.OpenstackBaseHelm):
bridges = {} bridges = {}
index = 0 index = 0
for iface in self.interfaces_by_hostid.get(host.id, []): for iface in self.interfaces_by_hostid.get(host.id, []):
if self._is_data_network_type(iface): if self._is_data_network_type(iface) or self._is_sriov_network_type(iface):
if any(dn.datanetwork_network_type in if any(dn.datanetwork_network_type in
[constants.DATANETWORK_TYPE_FLAT, [constants.DATANETWORK_TYPE_FLAT,
constants.DATANETWORK_TYPE_VLAN] for dn in constants.DATANETWORK_TYPE_VLAN] for dn in
@@ -171,25 +171,24 @@ class NeutronHelm(openstack.OpenstackBaseHelm):
bridge_mappings = "" bridge_mappings = ""
index = 0 index = 0
for iface in self.interfaces_by_hostid.get(host.id, []): for iface in self.interfaces_by_hostid.get(host.id, []):
if self._is_data_network_type(iface): if self._is_data_network_type(iface) or self._is_sriov_network_type(iface):
# obtain the assigned bridge for interface datanets = self.ifdatanets_by_ifaceid.get(iface.id, [])
brname = 'br-phy%d' % index for datanet in datanets:
if brname: dn_name = datanet['datanetwork_name'].strip()
datanets = self.ifdatanets_by_ifaceid.get(iface.id, []) LOG.debug('_get_dynamic_ovs_agent_config '
for datanet in datanets: 'host=%s datanet=%s', host.hostname, dn_name)
dn_name = datanet['datanetwork_name'].strip() if (self._is_data_network_type(iface) and
LOG.debug('_get_dynamic_ovs_agent_config ' datanet.datanetwork_network_type ==
'host=%s datanet=%s', host.hostname, dn_name) constants.DATANETWORK_TYPE_VXLAN):
if (datanet.datanetwork_network_type == local_ip = self._get_interface_primary_address(
constants.DATANETWORK_TYPE_VXLAN): self.context, host, iface)
local_ip = self._get_interface_primary_address( tunnel_types = constants.DATANETWORK_TYPE_VXLAN
self.context, host, iface) elif (datanet.datanetwork_network_type in
tunnel_types = constants.DATANETWORK_TYPE_VXLAN [constants.DATANETWORK_TYPE_FLAT,
elif (datanet.datanetwork_network_type in constants.DATANETWORK_TYPE_VLAN]):
[constants.DATANETWORK_TYPE_FLAT, brname = 'br-phy%d' % index
constants.DATANETWORK_TYPE_VLAN]): bridge_mappings += ('%s:%s,' % (dn_name, brname))
bridge_mappings += ('%s:%s,' % (dn_name, brname)) index += 1
index += 1
agent = {} agent = {}
ovs = { ovs = {