Esempio n. 1
0
 def test_update_ipmi_properties(self):
     with task_manager.acquire(self.context, self.node.uuid, shared=False) as task:
         ipmi_info = {"ipmi_address": "1.2.3.4", "ipmi_username": "******", "ipmi_password": "******"}
         task.node.driver_info = self.info
         irmc_common.update_ipmi_properties(task)
         actual_info = task.node.driver_info
         expected_info = dict(self.info, **ipmi_info)
         self.assertEqual(expected_info, actual_info)
Esempio n. 2
0
 def test_update_ipmi_properties(self):
     with task_manager.acquire(self.context, self.node.uuid,
                               shared=False) as task:
         ipmi_info = {
             "ipmi_address": "1.2.3.4",
             "ipmi_username": "******",
             "ipmi_password": "******",
         }
         task.node.driver_info = self.info
         irmc_common.update_ipmi_properties(task)
         actual_info = task.node.driver_info
         expected_info = dict(self.info, **ipmi_info)
         self.assertEqual(expected_info, actual_info)
Esempio n. 3
0
    def get_power_state(self, task):
        """Return the power state of the task's node.

        :param task: a TaskManager instance containing the node to act on.
        :returns: a power state. One of :mod:`ironic.common.states`.
        :raises: InvalidParameterValue if required ipmi parameters are missing.
        :raises: MissingParameterValue if a required parameter is missing.
        :raises: IPMIFailure on an error from ipmitool (from _power_status
            call).
        """
        irmc_common.update_ipmi_properties(task)
        ipmi_power = ipmitool.IPMIPower()
        return ipmi_power.get_power_state(task)
Esempio n. 4
0
    def validate(self, task):
        """Validate the driver-specific management information.

        This method validates whether the 'driver_info' property of the
        supplied node contains the required information for this driver.

        :param task: A TaskManager instance containing the node to act on.
        :raises: InvalidParameterValue if required parameters are invalid.
        :raises: MissingParameterValue if a required parameter is missing.
        """
        irmc_common.parse_driver_info(task.node)
        irmc_common.update_ipmi_properties(task)
        super(IRMCManagement, self).validate(task)
Esempio n. 5
0
    def get_power_state(self, task):
        """Return the power state of the task's node.

        :param task: a TaskManager instance containing the node to act on.
        :returns: a power state. One of :mod:`ironic.common.states`.
        :raises: InvalidParameterValue if required ipmi parameters are missing.
        :raises: MissingParameterValue if a required parameter is missing.
        :raises: IPMIFailure on an error from ipmitool (from _power_status
            call).
        """
        irmc_common.update_ipmi_properties(task)
        ipmi_power = ipmitool.IPMIPower()
        return ipmi_power.get_power_state(task)
Esempio n. 6
0
    def validate(self, task):
        """Validate the driver-specific management information.

        This method validates whether the 'driver_info' property of the
        supplied node contains the required information for this driver.

        :param task: A TaskManager instance containing the node to act on.
        :raises: InvalidParameterValue if required parameters are invalid.
        :raises: MissingParameterValue if a required parameter is missing.
        """
        irmc_common.parse_driver_info(task.node)
        irmc_common.update_ipmi_properties(task)
        super(IRMCManagement, self).validate(task)