Multiple driver related deprecations

An outcome of the Ironic 2024.1 PTG was that we would go ahead and
deprecate the ibmc, xclarity, and the wsman interfaces of the idrac
hardware type.

The forward path is Redfish, as evidenced by the idrac hardware
type having both wsman and redfish based interfaces available
for users to choose from.

These changes are being made by the Ironic team due to a lack of
recent upstream contact with any of the related driver maintainers.

Change-Id: Ia4aa99f4987570426bb155af8f437c9ba6013837
This commit is contained in:
Julia Kreger 2023-11-20 10:33:32 -08:00
parent ff4e836c55
commit 6ac1308050
15 changed files with 86 additions and 0 deletions

View File

@ -5,6 +5,12 @@ iBMC driver
Overview
========
.. warning::
The ``ibmc`` driver has been deprecated and is anticipated to be removed
from Ironic at some point during or after the 2024.2 development cycle.
The anticipated forward management path is to migrate to the ``redfish``
hardware type.
The ``ibmc`` driver is targeted for Huawei V5 series rack server such as
2288H V5, CH121 V5. The iBMC hardware type enables the user to take advantage
of features of `Huawei iBMC`_ to control Huawei server.

View File

@ -5,6 +5,12 @@ iDRAC driver
Overview
========
.. warning::
The ``-wsman`` driver interfaces have been deprecated and are anticipated
to be removed from Ironic at some point during or after the 2024.2
development cycle. The anticipated forward management path is to migrate
to the ``-redfish`` driver interfaces or the ``redfish`` hardware type.
The integrated Dell Remote Access Controller (iDRAC_) is an out-of-band
management platform on Dell EMC servers, and is supported directly by
the ``idrac`` hardware type. This driver uses the Dell Web Services for

View File

@ -5,6 +5,12 @@ XClarity driver
Overview
========
.. warning::
The ``xlcarity`` driver has been deprecated and is anticipated to be removed
from Ironic at some point during or after the 2024.2 development cycle.
The anticipated forward management path is to migrate to the ``redfish``
hardware type.
The ``xclarity`` driver is targeted for IMM 2.0 and IMM 3.0 managed Lenovo
servers. The xclarity hardware type enables the user to take advantage of
`XClarity Manager`_ by using the `XClarity Python Client`_.

View File

@ -55,6 +55,10 @@ class DracRedfishBIOS(redfish_bios.RedfishBIOS):
class DracWSManBIOS(base.BIOSInterface):
"""BIOSInterface Implementation for iDRAC."""
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
# argsinfo dict for BIOS clean/deploy steps
_args_info = {
"settings": {

View File

@ -690,6 +690,10 @@ class DracRedfishManagement(redfish_management.RedfishManagement):
class DracWSManManagement(base.ManagementInterface):
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def get_properties(self):
"""Return the properties of the interface."""
return drac_common.COMMON_PROPERTIES

View File

@ -192,6 +192,10 @@ class DracRedfishPower(redfish_power.RedfishPower):
class DracWSManPower(base.PowerInterface):
"""Interface for power-related actions."""
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def get_properties(self):
"""Return the properties of the interface."""
return drac_common.COMMON_PROPERTIES

View File

@ -1645,6 +1645,10 @@ class DracRedfishRAID(redfish_raid.RedfishRAID):
class DracWSManRAID(base.RAIDInterface):
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def get_properties(self):
"""Return the properties of the interface."""
return drac_common.COMMON_PROPERTIES

View File

@ -34,6 +34,10 @@ METRICS = metrics_utils.get_metrics_logger(__name__)
class DracWSManVendorPassthru(base.VendorInterface):
"""Interface for DRAC specific methods."""
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def get_properties(self):
"""Return the properties of the interface."""
return drac_common.COMMON_PROPERTIES

View File

@ -34,6 +34,10 @@ LOG = log.getLogger(__name__)
class IBMCManagement(base.ManagementInterface):
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def __init__(self):
"""Initialize the iBMC management interface

View File

@ -40,6 +40,10 @@ EXPECT_POWER_STATE_MAP = {
class IBMCPower(base.PowerInterface):
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def __init__(self):
"""Initialize the iBMC power interface.

View File

@ -36,6 +36,10 @@ METRICS = metrics_utils.get_metrics_logger(__name__)
class IbmcRAID(base.RAIDInterface):
"""Implementation of RAIDInterface for iBMC."""
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
RAID_APPLY_CONFIGURATION_ARGSINFO = {
"raid_config": {
"description": "The RAID configuration to apply.",

View File

@ -29,6 +29,10 @@ LOG = log.getLogger(__name__)
class IBMCVendor(base.VendorInterface):
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def __init__(self):
"""Initialize the iBMC vendor interface.

View File

@ -51,6 +51,10 @@ SUPPORTED_BOOT_DEVICES = [
class XClarityManagement(base.ManagementInterface):
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def get_properties(self):
return common.COMMON_PROPERTIES

View File

@ -32,6 +32,10 @@ xclarity_client_exceptions = importutils.try_import(
class XClarityPower(base.PowerInterface):
# NOTE(TheJulia): Deprecating November 2023 in favor of Redfish
# and due to a lack of active driver maintenance.
supported = False
def get_properties(self):
return common.get_properties()

View File

@ -0,0 +1,24 @@
---
deprecations:
- |
The ``ibmc`` hardware type is deprecated due to a lack of upstream
communication, driver maintenance, and a recognition that the Redfish
hardware type likely works for the users at this point. This driver is
expected to be removed during the ``2024.2`` development cycle.
- The ``xclarity`` hardware type is deprecated due to a lack of upstream
communication, driver maintenance, and a recognition that the Redfish
hardware type is suitable for Lenovo hardware users moving forward.
This driver is expected to be removed during the ``2024.2`` development
cycle.
- The ``idrac-wsman`` interfaces on the ``idrac`` hardware type are
deprecated due to a lack of upstream communiation, and the decision of
the driver's maintainer in the past to move in to the direction of
using Redfish for driver interactions.
These driver interfaces are expected to be removed during the
``2024.2`` development cycle.
other:
- The classic ``ilo`` hardware types may be deprecated in the future for
removal or major changes, however our last communication with the
maintainers as of the ``2024.1`` Project Teams Gathering sessions
indiated they were still working to determine their own forward
path with a strong emphasis on the use of Redfish.