iPXE over IPv6 supported since OVN v23.06.0

The minimum OVN version required for 2026.1 (Gazpacho) is v24.03.

TrivialFix

Signed-off-by: Rodolfo Alonso Hernandez <ralonsoh@redhat.com>
Change-Id: I56ab380c333e061d6722f5fa6b4d6d2560ad0694
This commit is contained in:
Rodolfo Alonso Hernandez
2025-11-28 15:55:55 +01:00
parent 973fab842a
commit cdf75bdea7
4 changed files with 8 additions and 43 deletions

View File

@@ -523,7 +523,7 @@ class CoreChecks(base.BaseChecks):
upgradecheck.Code.SUCCESS,
_("Native OVN DHCP is disabed for baremetal ports."))
try:
ovn_client = get_ovn_client()
get_ovn_client()
except RuntimeError:
return upgradecheck.Result(
upgradecheck.Code.WARNING,
@@ -533,22 +533,9 @@ class CoreChecks(base.BaseChecks):
upgradecheck.Code.WARNING,
_("Failed to connect to OVN. Error: %s") % err)
if ovn_client.is_ipxe_over_ipv6_supported:
return upgradecheck.Result(
upgradecheck.Code.SUCCESS,
_('Version of OVN supports iPXE over IPv6.'))
return upgradecheck.Result(
upgradecheck.Code.WARNING,
_('Version of OVN does not support iPXE over IPv6 but '
'``disable_ovn_dhcp_for_baremetal_ports`` is set to '
'``False``. In case if provisioning of baremetal nodes '
'is required, please make sure that either '
'``disable_ovn_dhcp_for_baremetal_ports`` option is set to '
'``True`` and Neutron DHCP agent is available or use '
'OVN with patch https://github.com/ovn-org/ovn/commit/'
'c5fd51bd154147a567097eaf61fbebc0b5b39e28 which added '
'support for iPXE over IPv6. It is available in '
'OVN >= 23.06.0.'))
upgradecheck.Code.SUCCESS,
_('Version of OVN supports iPXE over IPv6.'))
@staticmethod
def ml2_ovs_igmp_flood_check(checker):

View File

@@ -352,19 +352,6 @@ class OVNClient:
(6, 3, 0))
return self._is_mcast_flood_broken
# TODO(slaweq): Remove this method when min supported OVN version will be
# >= v23.06.0 which is the one which have support for IPv6 iPXE booting
# added:
# https://github.com/ovn-org/ovn/commit/c5fd51bd154147a567097eaf61fbebc0b5b39e28
@property
def is_ipxe_over_ipv6_supported(self):
if self._is_ipxe_over_ipv6_supported is None:
schema_version = self._nb_idl.get_schema_version()
self._is_ipxe_over_ipv6_supported = (
versionutils.convert_version_to_tuple(schema_version) >=
(7, 0, 4))
return self._is_ipxe_over_ipv6_supported
def _get_port_options(self, context, port):
admin_context = context.elevated()
bp_info = utils.validate_and_get_data_from_binding_profile(port)

View File

@@ -242,20 +242,6 @@ class TestChecks(base.BaseTestCase):
self.assertEqual(Code.SUCCESS, result.code)
mock_get_ovn_client.assert_called_once_with()
@mock.patch.object(checks, 'get_ovn_client')
def test_ovn_for_bm_provisioning_over_ipv6_check_warning(
self, mock_get_ovn_client):
ovn_client_mock = mock.Mock(is_ipxe_over_ipv6_supported=False)
mock_get_ovn_client.return_value = ovn_client_mock
cfg.CONF.set_override(
'disable_ovn_dhcp_for_baremetal_ports', False, group='ovn')
result = checks.CoreChecks.ovn_for_bm_provisioning_over_ipv6_check(
mock.ANY)
self.assertEqual(Code.WARNING, result.code)
mock_get_ovn_client.assert_called_once_with()
@mock.patch.object(checks, 'get_ovn_client')
def test_ovn_for_bm_provisioning_over_ipv6_check_failed_to_get_ovn_client(
self, mock_get_ovn_client):

View File

@@ -0,0 +1,5 @@
---
other:
- |
It is assumed now that OVN supports iPXE over IPv6. This functionality was
added in OVN v23.06.0.