From 92fee405380972fef71979d27c5225b2794e3549 Mon Sep 17 00:00:00 2001 From: Julia Kreger Date: Mon, 20 Jan 2020 09:53:46 -0800 Subject: [PATCH] Deprecate irmc hardware type Third party CI for the Fujitsu irmc hardware type has been down for a substantial amount of time and we've been unable to contact anyone at Fujitsu. As such, we are deprecating the driver in order to eventually remove it from the code base. Change-Id: If0d124352dec7072d7f806d60628eefe3619a8b0 Story: 2007186 Task: 38312 --- ironic/drivers/irmc.py | 2 ++ ironic/drivers/modules/irmc/bios.py | 2 ++ ironic/drivers/modules/irmc/boot.py | 6 ++++++ ironic/drivers/modules/irmc/inspect.py | 2 ++ ironic/drivers/modules/irmc/power.py | 2 ++ ironic/drivers/modules/irmc/raid.py | 2 ++ .../notes/deprecate-irmc-031f55c3bb1fb863.yaml | 10 ++++++++++ 7 files changed, 26 insertions(+) create mode 100644 releasenotes/notes/deprecate-irmc-031f55c3bb1fb863.yaml diff --git a/ironic/drivers/irmc.py b/ironic/drivers/irmc.py index f3c2d7c65f..0e3cb53860 100644 --- a/ironic/drivers/irmc.py +++ b/ironic/drivers/irmc.py @@ -38,6 +38,8 @@ class IRMCHardware(generic.GenericHardware): have iRMC S4 management system. """ + supported = False + @property def supported_bios_interfaces(self): """List of supported bios interfaces.""" diff --git a/ironic/drivers/modules/irmc/bios.py b/ironic/drivers/modules/irmc/bios.py index 55201b5d1a..8bf3a026de 100644 --- a/ironic/drivers/modules/irmc/bios.py +++ b/ironic/drivers/modules/irmc/bios.py @@ -34,6 +34,8 @@ METRICS = metrics_utils.get_metrics_logger(__name__) class IRMCBIOS(base.BIOSInterface): + supported = False + def get_properties(self): """Return the properties of the interface.""" return irmc_common.COMMON_PROPERTIES diff --git a/ironic/drivers/modules/irmc/boot.py b/ironic/drivers/modules/irmc/boot.py index 76c1d00a25..c7bb45c783 100644 --- a/ironic/drivers/modules/irmc/boot.py +++ b/ironic/drivers/modules/irmc/boot.py @@ -580,6 +580,8 @@ class IRMCVolumeBootMixIn(object): used by VIOM (Virtual I/O Manager) library of SCCI client. """ + supported = False + def _validate_volume_boot(self, task): """Validate information for volume boot with this interface. @@ -898,6 +900,8 @@ class IRMCVolumeBootMixIn(object): class IRMCVirtualMediaBoot(base.BootInterface, IRMCVolumeBootMixIn): """iRMC Virtual Media boot-related actions.""" + supported = False + capabilities = ['iscsi_volume_boot', 'fibre_channel_volume_boot'] def __init__(self): @@ -1094,6 +1098,8 @@ class IRMCVirtualMediaBoot(base.BootInterface, IRMCVolumeBootMixIn): class IRMCPXEBoot(pxe.PXEBoot): """iRMC PXE boot.""" + supported = False + @METRICS.timer('IRMCPXEBoot.prepare_ramdisk') def prepare_ramdisk(self, task, ramdisk_params): """Prepares the boot of Ironic ramdisk using PXE. diff --git a/ironic/drivers/modules/irmc/inspect.py b/ironic/drivers/modules/irmc/inspect.py index 5d438a6c81..87b8fb9287 100644 --- a/ironic/drivers/modules/irmc/inspect.py +++ b/ironic/drivers/modules/irmc/inspect.py @@ -197,6 +197,8 @@ def _inspect_hardware(node, existing_traits=None, **kwargs): class IRMCInspect(base.InspectInterface): """Interface for out of band inspection.""" + supported = False + def __init__(self): """Validate the driver-specific inspection information. diff --git a/ironic/drivers/modules/irmc/power.py b/ironic/drivers/modules/irmc/power.py index fbadffb5ee..3adea8ce7d 100644 --- a/ironic/drivers/modules/irmc/power.py +++ b/ironic/drivers/modules/irmc/power.py @@ -208,6 +208,8 @@ def _set_power_state(task, target_state, timeout=None): class IRMCPower(base.PowerInterface): """Interface for power-related actions.""" + supported = False + def get_properties(self): """Return the properties of the interface. diff --git a/ironic/drivers/modules/irmc/raid.py b/ironic/drivers/modules/irmc/raid.py index 9016956322..55c268fb13 100644 --- a/ironic/drivers/modules/irmc/raid.py +++ b/ironic/drivers/modules/irmc/raid.py @@ -339,6 +339,8 @@ def _validate_physical_disks(node, logical_disks): class IRMCRAID(base.RAIDInterface): + supported = False + def get_properties(self): """Return the properties of the interface.""" return irmc_common.COMMON_PROPERTIES diff --git a/releasenotes/notes/deprecate-irmc-031f55c3bb1fb863.yaml b/releasenotes/notes/deprecate-irmc-031f55c3bb1fb863.yaml new file mode 100644 index 0000000000..cba3e39c0a --- /dev/null +++ b/releasenotes/notes/deprecate-irmc-031f55c3bb1fb863.yaml @@ -0,0 +1,10 @@ +--- +deprecations: + - | + The Fujitsu ``irmc`` hardware type has been deprecated. The Third Party + CI for the driver stopped responding on or around July 7th, 2019. As such, + we cannot claim fixes or changes to the driver are in a working state. + + We have heard from the Fujitsu team that they intend to return ``irmc`` + CI to working order, and as such should that occur this deprecation + will be revoked.