예제 #1
0
파일: pxe.py 프로젝트: zweiustc/ironic
 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')
예제 #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()
예제 #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')
예제 #4
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 = iscsi_deploy.ISCSIDeploy()
예제 #6
0
파일: pxe.py 프로젝트: zweiustc/ironic
 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')
예제 #7
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.raid = agent.AgentRAID()
예제 #8
0
파일: pxe.py 프로젝트: jriguera/ironic
 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()
예제 #9
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')
예제 #10
0
파일: pxe.py 프로젝트: mat128/ironic
 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()
예제 #11
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()
예제 #12
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()
예제 #13
0
파일: fake.py 프로젝트: fellypefca/ironic
    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 = drac_power.DracPower()
        self.deploy = iscsi_deploy.ISCSIDeploy()
        self.management = drac_mgmt.DracManagement()
        self.raid = drac_raid.DracRAID()
        self.vendor = drac_vendor.DracVendorPassthru()
        self.inspect = drac_inspect.DracInspect()
예제 #14
0
    def __init__(self):
        if not importutils.try_import('scciclient.irmc.scci'):
            raise exception.DriverLoadError(
                driver=self.__class__.__name__,
                reason=_("Unable to import python-scciclient library"))

        self.power = power.IRMCPower()
        self.boot = boot.IRMCVirtualMediaBoot()
        self.deploy = iscsi_deploy.ISCSIDeploy()
        self.console = ipmitool.IPMIShellinaboxConsole()
        self.management = management.IRMCManagement()
        self.vendor = iscsi_deploy.VendorPassthru()
예제 #15
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
예제 #16
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 = ilo_boot.IloPXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.vendor = ilo_vendor.VendorPassthru()
     self.console = ilo_console.IloConsoleInterface()
     self.management = ilo_management.IloManagement()
     self.inspect = ilo_inspect.IloInspect()
     self.raid = agent.AgentRAID()
예제 #17
0
파일: pxe.py 프로젝트: zweiustc/ironic
 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')
예제 #18
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 = iscsi_deploy.ISCSIDeploy()
        self.vendor = iscsi_deploy.VendorPassthru()
예제 #19
0
파일: pxe.py 프로젝트: jriguera/ironic
 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()
예제 #20
0
파일: pxe.py 프로젝트: mat128/ironic
 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.inspect = inspector.Inspector.create_if_enabled(
         'PXEAndIPMIToolDriver')
     self.iscsi_vendor = iscsi_deploy.VendorPassthru()
     self.ipmi_vendor = ipmitool.VendorPassthru()
     self.mapping = {
         'send_raw': self.ipmi_vendor,
         'bmc_reset': self.ipmi_vendor,
         'heartbeat': self.iscsi_vendor
     }
     self.driver_passthru_mapping = {'lookup': self.iscsi_vendor}
     self.vendor = utils.MixinVendorInterface(
         self.mapping, driver_passthru_mapping=self.driver_passthru_mapping)
     self.raid = agent.AgentRAID()
예제 #21
0
 def __init__(self):
     self.power = power.BMCRedfishPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = management.BMCRedfishManagement()
예제 #22
0
 def __init__(self):
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = redfish_mgmt.RedfishManagement()
     self.power = redfish_power.RedfishPower()
예제 #23
0
 def __init__(self):
     self.power = fake.FakePower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.vendor = iscsi_deploy.VendorPassthru()
예제 #24
0
파일: pxe.py 프로젝트: mat128/ironic
 def __init__(self):
     self.power = msftocs_power.MSFTOCSPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = msftocs_management.MSFTOCSManagement()
     self.vendor = iscsi_deploy.VendorPassthru()
 def __init__(self):
     self.boot = pxe.PXEBoot()
     self.power = wol_power.WakeOnLanPower()
     self.deploy = iscsi_deploy.ISCSIDeploy()
예제 #26
0
파일: fake.py 프로젝트: stackhpc/ironic
 def __init__(self):
     self.power = fake.FakePower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
 def __init__(self):
     self.power = power.LibvirtPower()
     self.boot = pxe.PXEBoot()
     self.deploy = iscsi_deploy.ISCSIDeploy()
     self.management = power.LibvirtManagement()