""" 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() self.management = ipmitool.IPMIManagement() self.vendor = pxe.VendorPassthru()