2014-08-01 09:06:02 +00:00
|
|
|
"""
|
|
|
|
XCATBaremetalDriver
|
|
|
|
use xcat to deploy a baremetal machine
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
|
|
from ironic.drivers import base
|
|
|
|
from ironic.drivers.modules import ipmitool
|
|
|
|
from ironic.drivers.modules import pxe
|
|
|
|
from ironic.drivers.modules import xcat_pxe
|
|
|
|
from ironic.drivers import utils
|
|
|
|
from ironic.drivers.modules import xcat_rpower
|
|
|
|
|
|
|
|
|
|
|
|
class XCATBaremetalDriver(base.BaseDriver):
|
|
|
|
"""xCAT driver
|
|
|
|
This driver implements the `core` functionality, combinding
|
|
|
|
:class:`ironic.drivers.xcat_rpower.XcatPower` for power on/off and reboot with
|
|
|
|
:class:`ironic.driver.xcat_pxe.PXEDeploy` for image deployment. Implementations are in
|
|
|
|
those respective classes; this class is merely the glue between them.
|
|
|
|
"""
|
|
|
|
def __init__(self):
|
|
|
|
self.power = xcat_rpower.XcatPower()
|
|
|
|
self.console = ipmitool.IPMIShellinaboxConsole()
|
|
|
|
self.deploy = xcat_pxe.PXEDeploy()
|
2014-08-18 02:21:25 +00:00
|
|
|
self.management = ipmitool.IPMIManagement()
|
|
|
|
self.vendor = pxe.VendorPassthru()
|