예제 #1
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')
예제 #2
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()
예제 #3
0
 def setUp(self):
     super(DracManagementTestCase, self).setUp()
     mgr_utils.mock_the_extension_manager(driver='fake_drac')
     self.node = obj_utils.create_test_node(self.context,
                                            driver='fake_drac',
                                            driver_info=INFO_DICT)
     self.driver = drac_mgmt.DracManagement()
     self.task = mock.Mock()
     self.task.node = self.node
예제 #4
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 = drac_power.DracPower()
        self.deploy = fake.FakeDeploy()
        self.management = drac_mgmt.DracManagement()
예제 #5
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 = drac_power.DracPower()
        self.deploy = fake.FakeDeploy()
        self.management = drac_mgmt.DracManagement()
        self.vendor = drac_vendor.DracVendorPassthru()
예제 #6
0
파일: drac.py 프로젝트: infraredgirl/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 = power.DracPower()
        self.deploy = pxe.PXEDeploy()
        self.management = management.DracManagement()
        self.vendor = pxe.VendorPassthru()
예제 #7
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()
예제 #8
0
 def test_get_properties(self, mock_get_drac_client):
     expected = drac_common.COMMON_PROPERTIES
     driver = drac_mgmt.DracManagement()
     self.assertEqual(expected, driver.get_properties())