Beispiel #1
0
 def __init__(self):
     self.power = ssh.SSHPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = ssh.SSHManagement()
     self.vendor = iscsi_deploy.VendorPassthru()
     self.inspect = inspector.Inspector.create_if_enabled('PXEAndSSHDriver')
Beispiel #2
0
 def __init__(self):
     if not importutils.try_import('pyghmi'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import pyghmi library"))
     self.power = ipminative.NativeIPMIPower()
     self.console = ipminative.NativeIPMIShellinaboxConsole()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = ipminative.NativeIPMIManagement()
     self.iscsi_vendor = iscsi_deploy.VendorPassthru()
     self.ipminative_vendor = ipminative.VendorPassthru()
     self.mapping = {
         'send_raw': self.ipminative_vendor,
         'bmc_reset': self.ipminative_vendor,
         'heartbeat': self.iscsi_vendor,
         'pass_bootloader_install_info': self.iscsi_vendor,
         'pass_deploy_info': self.iscsi_vendor,
     }
     self.driver_passthru_mapping = {'lookup': self.iscsi_vendor}
     self.vendor = utils.MixinVendorInterface(self.mapping,
                                              self.driver_passthru_mapping)
     self.inspect = inspector.Inspector.create_if_enabled(
         'PXEAndIPMINativeDriver')
     self.raid = agent.AgentRAID()
Beispiel #3
0
    def __init__(self):
        if not importutils.try_import('pywsman'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_('Unable to import pywsman library'))

        if not importutils.try_import('dracclient'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_('Unable to import python-dracclient library'))

        self.power = power.DracPower()
        self.boot = pxe.PXEBoot()
        self.deploy = iscsi_deploy.ISCSIDeploy()
        self.management = management.DracManagement()
        self.iscsi_vendor = iscsi_deploy.VendorPassthru()
        self.drac_vendor = vendor_passthru.DracVendorPassthru()
        self.mapping = {
            'pass_deploy_info': self.iscsi_vendor,
            'heartbeat': self.iscsi_vendor,
            'pass_bootloader_install_info': self.iscsi_vendor,
            'get_bios_config': self.drac_vendor,
            'set_bios_config': self.drac_vendor,
            'commit_bios_config': self.drac_vendor,
            'abandon_bios_config': self.drac_vendor,
        }
        self.vendor = utils.MixinVendorInterface(self.mapping)
        self.inspect = inspector.Inspector.create_if_enabled('PXEDracDriver')
Beispiel #4
0
    def __init__(self):
        if not importutils.try_import('dracclient'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_('Unable to import python-dracclient library'))

        self.power = power.DracPower()
        self.boot = pxe.PXEBoot()
        self.deploy = deploy.DracDeploy()
        self.management = management.DracManagement()
        self.raid = raid.DracRAID()
        self.iscsi_vendor = iscsi_deploy.VendorPassthru()
        self.drac_vendor = vendor_passthru.DracVendorPassthru()
        self.mapping = {
            'heartbeat': self.iscsi_vendor,
            'get_bios_config': self.drac_vendor,
            'set_bios_config': self.drac_vendor,
            'commit_bios_config': self.drac_vendor,
            'abandon_bios_config': self.drac_vendor,
            'list_unfinished_jobs': self.drac_vendor,
        }
        self.driver_passthru_mapping = {'lookup': self.iscsi_vendor}
        self.vendor = utils.MixinVendorInterface(self.mapping,
                                                 self.driver_passthru_mapping)
        self.inspect = drac_inspect.DracInspect()
 def __init__(self):
     self.power = ipmitool.IPMIPower()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = ipmitool.IPMIManagement()
     self.console = ipmitool.IPMIShellinaboxConsole()
     self.ipmi_vendor = ipmitool.VendorPassthru()
     self.nm_vendor = nm_vendor.IntelNMVendorPassthru()
     self.mapping = {
         'send_raw': self.ipmi_vendor,
         'bmc_reset': self.ipmi_vendor,
         'control_nm_policy': self.nm_vendor,
         'set_nm_policy': self.nm_vendor,
         'get_nm_policy': self.nm_vendor,
         'remove_nm_policy': self.nm_vendor,
         'set_nm_policy_suspend': self.nm_vendor,
         'get_nm_policy_suspend': self.nm_vendor,
         'remove_nm_policy_suspend': self.nm_vendor,
         'get_nm_capabilities': self.nm_vendor,
         'get_nm_version': self.nm_vendor,
         'get_nm_statistics': self.nm_vendor,
         'reset_nm_statistics': self.nm_vendor
     }
     self.vendor = utils.MixinVendorInterface(self.mapping)
     self.raid = agent.AgentRAID()
     self.inspect = inspector.Inspector.create_if_enabled(
         'AgentAndIPMIToolDriver')
Beispiel #6
0
 def __init__(self):
     self.power = ssh.SSHPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = ssh.SSHManagement()
     self.inspect = inspector.Inspector.create_if_enabled('PXEAndSSHDriver')
     self.raid = agent.AgentRAID()
     self.console = ssh.ShellinaboxConsole()
 def __init__(self):
     if not importutils.try_import('iboot'):
         raise ironic_exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import iboot library"))
     self.power = iboot_power.IBootPower()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
Beispiel #8
0
 def __init__(self):
     self.power = ipmitool.IPMIPower()
     self.console = ipmitool.IPMIShellinaboxConsole()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = ipmitool.IPMIManagement()
     self.vendor = iscsi_deploy.VendorPassthru()
     self.inspect = inspector.Inspector.create_if_enabled(
         'PXEAndIPMIToolDriver')
Beispiel #9
0
 def __init__(self):
     if not importutils.try_import('iboot'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import iboot library"))
     self.power = iboot.IBootPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.vendor = iscsi_deploy.VendorPassthru()
Beispiel #10
0
 def __init__(self):
     self.power = ssh.SSHPower()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = ssh.SSHManagement()
     self.vendor = agent.AgentVendorInterface()
     self.raid = agent.AgentRAID()
     self.inspect = inspector.Inspector.create_if_enabled(
         'AgentAndSSHDriver')
Beispiel #11
0
 def __init__(self):
     if not importutils.try_import('pywsman'):
         raise ironic_exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import pywsman library"))
     self.power = amt_power.AMTPower()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = amt_management.AMTManagement()
Beispiel #12
0
 def __init__(self):
     if not importutils.try_import('UcsSdk'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import UcsSdk library"))
     self.power = ucs_power.Power()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = ucs_mgmt.UcsManagement()
     self.inspect = inspector.Inspector.create_if_enabled('PXEAndUcsDriver')
Beispiel #13
0
 def __init__(self):
     if not importutils.try_import('pywsman'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import pywsman library"))
     self.power = amt_power.AMTPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = amt_management.AMTManagement()
     self.vendor = amt_vendor.AMTPXEVendorPassthru()
Beispiel #14
0
 def __init__(self):
     if not importutils.try_import('ImcSdk'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import ImcSdk library"))
     self.power = cimc_power.Power()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = cimc_mgmt.CIMCManagement()
     self.vendor = iscsi_deploy.VendorPassthru()
Beispiel #15
0
 def __init__(self):
     if not importutils.try_import('pyremotevbox'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import pyremotevbox library"))
     self.power = virtualbox.VirtualBoxPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = virtualbox.VirtualBoxManagement()
     self.vendor = iscsi_deploy.VendorPassthru()
Beispiel #16
0
 def __init__(self):
     if not importutils.try_import('pyremotevbox'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import pyremotevbox library"))
     self.power = virtualbox.VirtualBoxPower()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = virtualbox.VirtualBoxManagement()
     self.raid = agent.AgentRAID()
Beispiel #17
0
 def __init__(self):
     self.power = ipmitool.IPMIPower()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = ipmitool.IPMIManagement()
     self.console = ipmitool.IPMIShellinaboxConsole()
     self.vendor = ipmitool.VendorPassthru()
     self.raid = agent.AgentRAID()
     self.inspect = inspector.Inspector.create_if_enabled(
         'AgentAndIPMIToolDriver')
Beispiel #18
0
 def __init__(self):
     if not importutils.try_import('UcsSdk'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import UcsSdk library"))
     self.power = ucs_power.Power()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = ucs_mgmt.UcsManagement()
     self.vendor = agent.AgentVendorInterface()
Beispiel #19
0
 def __init__(self):
     if not importutils.try_import('scciclient'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import python-scciclient library"))
     self.power = irmc_power.IRMCPower()
     self.console = ipmitool.IPMIShellinaboxConsole()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = irmc_management.IRMCManagement()
     self.inspect = irmc_inspect.IRMCInspect()
Beispiel #20
0
 def __init__(self):
     if not importutils.try_import('seamicroclient'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import seamicroclient library"))
     self.power = seamicro.Power()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = seamicro.Management()
     self.vendor = seamicro.VendorPassthru()
     self.console = seamicro.ShellinaboxConsole()
Beispiel #21
0
 def __init__(self):
     if not importutils.try_import('ImcSdk'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import ImcSdk library"))
     self.power = cimc_power.Power()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = cimc_mgmt.CIMCManagement()
     self.inspect = inspector.Inspector.create_if_enabled(
         'AgentAndCIMCDriver')
Beispiel #22
0
    def __init__(self):
        if not importutils.try_import('hpOneView.oneview_client'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_("Unable to import hpOneView library"))

        self.power = power.OneViewPower()
        self.management = management.OneViewManagement()
        self.boot = pxe.PXEBoot()
        self.deploy = deploy.OneViewIscsiDeploy()
        self.inspect = inspect.OneViewInspect.create_if_enabled(
            'ISCSIPXEOneViewDriver')
Beispiel #23
0
 def __init__(self):
     if not importutils.try_import('proliantutils'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import proliantutils library"))
     self.power = ilo_power.IloPower()
     self.boot = pxe.PXEBoot()
     self.deploy = ilo_deploy.IloPXEDeploy()
     self.vendor = ilo_deploy.IloPXEVendorPassthru()
     self.console = ilo_deploy.IloConsoleInterface()
     self.management = ilo_management.IloManagement()
     self.inspect = ilo_inspect.IloInspect()
Beispiel #24
0
 def __init__(self):
     if not importutils.try_import('pyghmi'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import pyghmi library"))
     self.power = ipminative.NativeIPMIPower()
     self.console = ipminative.NativeIPMIShellinaboxConsole()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = ipminative.NativeIPMIManagement()
     self.vendor = iscsi_deploy.VendorPassthru()
     self.inspect = inspector.Inspector.create_if_enabled(
         'PXEAndIPMINativeDriver')
Beispiel #25
0
    def __init__(self):
        if not importutils.try_import('dracclient'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_('Unable to import python-dracclient library'))

        self.power = power.DracPower()
        self.boot = pxe.PXEBoot()
        self.deploy = iscsi_deploy.ISCSIDeploy()
        self.management = management.DracManagement()
        self.raid = raid.DracRAID()
        self.vendor = vendor_passthru.DracVendorPassthru()
        self.inspect = drac_inspect.DracInspect()
Beispiel #26
0
    def __init__(self):
        # Driver has a runtime dependency on PySNMP, abort load if it is absent
        if not importutils.try_import('pysnmp'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_("Unable to import pysnmp library"))
        self.power = snmp.SNMPPower()
        self.boot = pxe.PXEBoot()
        self.deploy = iscsi_deploy.ISCSIDeploy()

        # PDUs have no boot device management capability.
        # Only PXE as a boot device is supported.
        self.management = None
Beispiel #27
0
    def __init__(self):
        if not importutils.try_import('oneview_client.client'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_("Unable to import python-oneviewclient library"))

        # Checks connectivity to OneView and version compatibility on driver
        # initialization
        oneview_client = common.get_oneview_client()
        oneview_client.verify_oneview_version()
        oneview_client.verify_credentials()
        self.power = power.OneViewPower()
        self.management = management.OneViewManagement()
        self.boot = pxe.PXEBoot()
        self.deploy = deploy.OneViewIscsiDeploy()
        self.vendor = iscsi_deploy.VendorPassthru()
Beispiel #28
0
 def __init__(self):
     if not importutils.try_import('seamicroclient'):
         raise exception.DriverLoadError(
             driver=self.__class__.__name__,
             reason=_("Unable to import seamicroclient library"))
     self.power = seamicro.Power()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = seamicro.Management()
     self.seamicro_vendor = seamicro.VendorPassthru()
     self.pxe_vendor = iscsi_deploy.VendorPassthru()
     self.mapping = {'pass_deploy_info': self.pxe_vendor,
                     'attach_volume': self.seamicro_vendor,
                     'set_node_vlan_id': self.seamicro_vendor}
     self.vendor = utils.MixinVendorInterface(self.mapping)
     self.console = seamicro.ShellinaboxConsole()
Beispiel #29
0
    def __init__(self):
        if not importutils.try_import('oneview_client.client'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_("Unable to import python-oneviewclient library"))

        # Checks connectivity to OneView and version compatibility on driver
        # initialization
        oneview_client = common.get_oneview_client()
        oneview_client.verify_oneview_version()
        oneview_client.verify_credentials()
        self.power = power.OneViewPower()
        self.management = management.OneViewManagement()
        self.boot = pxe.PXEBoot()
        self.deploy = deploy.OneViewAgentDeploy()
        self.vendor = vendor.AgentVendorInterface()
        self.inspect = inspect.OneViewInspect.create_if_enabled(
            'AgentPXEOneViewDriver')
Beispiel #30
0
 def __init__(self):
     self.power = ipmitool.IPMIPower()
     self.boot = pxe.PXEBoot()
     self.deploy = agent.AgentDeploy()
     self.management = ipmitool.IPMIManagement()
     self.console = ipmitool.IPMIShellinaboxConsole()
     self.agent_vendor = agent.AgentVendorInterface()
     self.ipmi_vendor = ipmitool.VendorPassthru()
     self.mapping = {'send_raw': self.ipmi_vendor,
                     'bmc_reset': self.ipmi_vendor,
                     'heartbeat': self.agent_vendor}
     self.driver_passthru_mapping = {'lookup': self.agent_vendor}
     self.vendor = utils.MixinVendorInterface(
         self.mapping,
         driver_passthru_mapping=self.driver_passthru_mapping)
     self.raid = agent.AgentRAID()
     self.inspect = inspector.Inspector.create_if_enabled(
         'AgentAndIPMIToolDriver')