Mark untested drivers as unsupported
This will cause them to log a warning at startup, that it is unsupported and may be removed later. The drivers marked unsupported are any driver that uses: * SSHPower / SSHManagement * NativeIPMIPower / NativeIPMIManagement * seamicro.Power / seamicro.Management * IBootPower * SNMPPower * VirtualBoxPower / VirtualBoxManagement * AMTPower / AMTManagement * MSFTOCSPower / MSFTOCSManagement * WakeOnLanPower See the release note in this change for the full list of the setup.cfg names for the drivers. The remaining drivers are tested via OpenStack CI, and/or have a third-party CI listed here[0] and are making an honest effort toward having stable CI. [0] https://wiki.openstack.org/wiki/ThirdPartySystems Closes-Bug: #1526410 Change-Id: I9c09be6b7a734426a4c0b18cb61ece5389428cd5
This commit is contained in:
parent
991d3a9f2b
commit
8758116f83
@ -97,6 +97,8 @@ class AgentAndIPMINativeDriver(base.BaseDriver):
|
|||||||
glue between them.
|
glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = ipminative.NativeIPMIPower()
|
self.power = ipminative.NativeIPMIPower()
|
||||||
self.boot = pxe.PXEBoot()
|
self.boot = pxe.PXEBoot()
|
||||||
@ -131,6 +133,8 @@ class AgentAndSSHDriver(base.BaseDriver):
|
|||||||
is merely the glue between them.
|
is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = ssh.SSHPower()
|
self.power = ssh.SSHPower()
|
||||||
self.boot = pxe.PXEBoot()
|
self.boot = pxe.PXEBoot()
|
||||||
@ -156,6 +160,8 @@ class AgentAndVirtualBoxDriver(base.BaseDriver):
|
|||||||
is merely the glue between them.
|
is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pyremotevbox'):
|
if not importutils.try_import('pyremotevbox'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -178,6 +184,9 @@ class AgentAndAMTDriver(base.BaseDriver):
|
|||||||
deployment. Implementations are in those respective classes; this
|
deployment. Implementations are in those respective classes; this
|
||||||
class is merely the glue between them.
|
class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pywsman'):
|
if not importutils.try_import('pywsman'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -249,6 +258,9 @@ class AgentAndWakeOnLanDriver(base.BaseDriver):
|
|||||||
Implementations are in those respective classes;
|
Implementations are in those respective classes;
|
||||||
this class is merely the glue between them.
|
this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = wol.WakeOnLanPower()
|
self.power = wol.WakeOnLanPower()
|
||||||
self.boot = pxe.PXEBoot()
|
self.boot = pxe.PXEBoot()
|
||||||
@ -266,6 +278,9 @@ class AgentAndIBootDriver(base.BaseDriver):
|
|||||||
Implementations are in those respective classes;
|
Implementations are in those respective classes;
|
||||||
this class is merely the glue between them.
|
this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('iboot'):
|
if not importutils.try_import('iboot'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
|
@ -116,6 +116,8 @@ class FakePXEDriver(base.BaseDriver):
|
|||||||
class FakeSSHDriver(base.BaseDriver):
|
class FakeSSHDriver(base.BaseDriver):
|
||||||
"""Example implementation of a Driver."""
|
"""Example implementation of a Driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = ssh.SSHPower()
|
self.power = ssh.SSHPower()
|
||||||
self.deploy = fake.FakeDeploy()
|
self.deploy = fake.FakeDeploy()
|
||||||
@ -126,6 +128,8 @@ class FakeSSHDriver(base.BaseDriver):
|
|||||||
class FakeIPMINativeDriver(base.BaseDriver):
|
class FakeIPMINativeDriver(base.BaseDriver):
|
||||||
"""Fake IPMINative driver."""
|
"""Fake IPMINative driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pyghmi'):
|
if not importutils.try_import('pyghmi'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -141,6 +145,8 @@ class FakeIPMINativeDriver(base.BaseDriver):
|
|||||||
class FakeSeaMicroDriver(base.BaseDriver):
|
class FakeSeaMicroDriver(base.BaseDriver):
|
||||||
"""Fake SeaMicro driver."""
|
"""Fake SeaMicro driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('seamicroclient'):
|
if not importutils.try_import('seamicroclient'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -167,6 +173,8 @@ class FakeAgentDriver(base.BaseDriver):
|
|||||||
class FakeIBootDriver(base.BaseDriver):
|
class FakeIBootDriver(base.BaseDriver):
|
||||||
"""Fake iBoot driver."""
|
"""Fake iBoot driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('iboot'):
|
if not importutils.try_import('iboot'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -210,6 +218,8 @@ class FakeDracDriver(base.BaseDriver):
|
|||||||
class FakeSNMPDriver(base.BaseDriver):
|
class FakeSNMPDriver(base.BaseDriver):
|
||||||
"""Fake SNMP driver."""
|
"""Fake SNMP driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pysnmp'):
|
if not importutils.try_import('pysnmp'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -236,6 +246,8 @@ class FakeIRMCDriver(base.BaseDriver):
|
|||||||
class FakeVirtualBoxDriver(base.BaseDriver):
|
class FakeVirtualBoxDriver(base.BaseDriver):
|
||||||
"""Fake VirtualBox driver."""
|
"""Fake VirtualBox driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pyremotevbox'):
|
if not importutils.try_import('pyremotevbox'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -264,6 +276,8 @@ class FakeIPMIToolInspectorDriver(base.BaseDriver):
|
|||||||
class FakeAMTDriver(base.BaseDriver):
|
class FakeAMTDriver(base.BaseDriver):
|
||||||
"""Fake AMT driver."""
|
"""Fake AMT driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pywsman'):
|
if not importutils.try_import('pywsman'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -277,6 +291,8 @@ class FakeAMTDriver(base.BaseDriver):
|
|||||||
class FakeMSFTOCSDriver(base.BaseDriver):
|
class FakeMSFTOCSDriver(base.BaseDriver):
|
||||||
"""Fake MSFT OCS driver."""
|
"""Fake MSFT OCS driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = msftocs_power.MSFTOCSPower()
|
self.power = msftocs_power.MSFTOCSPower()
|
||||||
self.deploy = fake.FakeDeploy()
|
self.deploy = fake.FakeDeploy()
|
||||||
@ -312,6 +328,8 @@ class FakeCIMCDriver(base.BaseDriver):
|
|||||||
class FakeWakeOnLanDriver(base.BaseDriver):
|
class FakeWakeOnLanDriver(base.BaseDriver):
|
||||||
"""Fake Wake-On-Lan driver."""
|
"""Fake Wake-On-Lan driver."""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = wol.WakeOnLanPower()
|
self.power = wol.WakeOnLanPower()
|
||||||
self.deploy = fake.FakeDeploy()
|
self.deploy = fake.FakeDeploy()
|
||||||
|
@ -116,6 +116,9 @@ class PXEAndSSHDriver(base.BaseDriver):
|
|||||||
image deployment. Implementations are in those respective
|
image deployment. Implementations are in those respective
|
||||||
classes; this class is merely the glue between them.
|
classes; this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = ssh.SSHPower()
|
self.power = ssh.SSHPower()
|
||||||
self.boot = pxe.PXEBoot()
|
self.boot = pxe.PXEBoot()
|
||||||
@ -138,6 +141,9 @@ class PXEAndIPMINativeDriver(base.BaseDriver):
|
|||||||
for image deployment. Implementations are in those respective
|
for image deployment. Implementations are in those respective
|
||||||
classes; this class is merely the glue between them.
|
classes; this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pyghmi'):
|
if not importutils.try_import('pyghmi'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -173,6 +179,9 @@ class PXEAndSeaMicroDriver(base.BaseDriver):
|
|||||||
for image deployment. Implementations are in those respective
|
for image deployment. Implementations are in those respective
|
||||||
classes; this class is merely the glue between them.
|
classes; this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('seamicroclient'):
|
if not importutils.try_import('seamicroclient'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -203,6 +212,9 @@ class PXEAndIBootDriver(base.BaseDriver):
|
|||||||
image deployment. Implementations are in those respective classes;
|
image deployment. Implementations are in those respective classes;
|
||||||
this class is merely the glue between them.
|
this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('iboot'):
|
if not importutils.try_import('iboot'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -247,6 +259,9 @@ class PXEAndSNMPDriver(base.BaseDriver):
|
|||||||
deployment. Implentations are in those respective classes; this
|
deployment. Implentations are in those respective classes; this
|
||||||
class is merely the glue between them.
|
class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
# Driver has a runtime dependency on PySNMP, abort load if it is absent
|
# Driver has a runtime dependency on PySNMP, abort load if it is absent
|
||||||
if not importutils.try_import('pysnmp'):
|
if not importutils.try_import('pysnmp'):
|
||||||
@ -297,6 +312,9 @@ class PXEAndVirtualBoxDriver(base.BaseDriver):
|
|||||||
deployment. Implementations are in those respective classes;
|
deployment. Implementations are in those respective classes;
|
||||||
this class is merely the glue between them.
|
this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pyremotevbox'):
|
if not importutils.try_import('pyremotevbox'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -319,6 +337,9 @@ class PXEAndAMTDriver(base.BaseDriver):
|
|||||||
deployment. Implementations are in those respective classes; this
|
deployment. Implementations are in those respective classes; this
|
||||||
class is merely the glue between them.
|
class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
if not importutils.try_import('pywsman'):
|
if not importutils.try_import('pywsman'):
|
||||||
raise exception.DriverLoadError(
|
raise exception.DriverLoadError(
|
||||||
@ -340,6 +361,9 @@ class PXEAndMSFTOCSDriver(base.BaseDriver):
|
|||||||
for image deployment. Implementations are in those respective classes;
|
for image deployment. Implementations are in those respective classes;
|
||||||
this class is merely the glue between them.
|
this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = msftocs_power.MSFTOCSPower()
|
self.power = msftocs_power.MSFTOCSPower()
|
||||||
self.boot = pxe.PXEBoot()
|
self.boot = pxe.PXEBoot()
|
||||||
@ -405,6 +429,9 @@ class PXEAndWakeOnLanDriver(base.BaseDriver):
|
|||||||
deployment. Implementations are in those respective classes;
|
deployment. Implementations are in those respective classes;
|
||||||
this class is merely the glue between them.
|
this class is merely the glue between them.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
supported = False
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.power = wol.WakeOnLanPower()
|
self.power = wol.WakeOnLanPower()
|
||||||
self.boot = pxe.PXEBoot()
|
self.boot = pxe.PXEBoot()
|
||||||
|
@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
deprecations:
|
||||||
|
- |
|
||||||
|
The following drivers are marked as unsupported and therefore deprecated.
|
||||||
|
Some or all of these drivers may be removed in the Ocata cycle or later.
|
||||||
|
|
||||||
|
* ``agent_amt``
|
||||||
|
* ``agent_iboot``
|
||||||
|
* ``agent_pyghmi``
|
||||||
|
* ``agent_ssh``
|
||||||
|
* ``agent_vbox``
|
||||||
|
* ``agent_wol``
|
||||||
|
* ``fake_ipminative``
|
||||||
|
* ``fake_ssh``
|
||||||
|
* ``fake_seamicro``
|
||||||
|
* ``fake_iboot``
|
||||||
|
* ``fake_snmp``
|
||||||
|
* ``fake_vbox``
|
||||||
|
* ``fake_amt``
|
||||||
|
* ``fake_msftocs``
|
||||||
|
* ``fake_wol``
|
||||||
|
* ``pxe_ipminative``
|
||||||
|
* ``pxe_ssh``
|
||||||
|
* ``pxe_vbox``
|
||||||
|
* ``pxe_seamicro``
|
||||||
|
* ``pxe_iboot``
|
||||||
|
* ``pxe_snmp``
|
||||||
|
* ``pxe_amt``
|
||||||
|
* ``pxe_msftocs``
|
||||||
|
* ``pxe_wol``
|
Loading…
x
Reference in New Issue
Block a user