boot.py (ironic-17.0.2) | : | boot.py (ironic-17.0.3) | ||
---|---|---|---|---|
skipping to change at line 386 | skipping to change at line 386 | |||
This method validates whether the 'instance_info' property of the | This method validates whether the 'instance_info' property of the | |||
supplied node contains the required information for this driver. | supplied node contains the required information for this driver. | |||
:param task: a TaskManager instance containing the node to act on. | :param task: a TaskManager instance containing the node to act on. | |||
:raises: InvalidParameterValue if any parameters are incorrect | :raises: InvalidParameterValue if any parameters are incorrect | |||
:raises: MissingParameterValue if some mandatory information | :raises: MissingParameterValue if some mandatory information | |||
is missing on the node | is missing on the node | |||
""" | """ | |||
node = task.node | node = task.node | |||
# NOTE(dtantsur): if we're are writing an image with local boot | ||||
# the boot interface does not care about image parameters and | ||||
# must not validate them. | ||||
if (not task.driver.storage.should_write_image(task) | ||||
or deploy_utils.get_boot_option(node) == 'local'): | ||||
return | ||||
d_info = _parse_deploy_info(node) | d_info = _parse_deploy_info(node) | |||
if node.driver_internal_info.get('is_whole_disk_image'): | if node.driver_internal_info.get('is_whole_disk_image'): | |||
props = [] | props = [] | |||
elif d_info.get('boot_iso'): | elif d_info.get('boot_iso'): | |||
props = ['boot_iso'] | props = ['boot_iso'] | |||
elif service_utils.is_glance_image(d_info['image_source']): | elif service_utils.is_glance_image(d_info['image_source']): | |||
props = ['kernel_id', 'ramdisk_id'] | props = ['kernel_id', 'ramdisk_id'] | |||
else: | else: | |||
skipping to change at line 426 | skipping to change at line 433 | |||
This method validates whether the 'driver_info' and/or 'instance_info' | This method validates whether the 'driver_info' and/or 'instance_info' | |||
properties of the task's node contains the required information for | properties of the task's node contains the required information for | |||
this interface to function. | this interface to function. | |||
:param task: A TaskManager instance containing the node to act on. | :param task: A TaskManager instance containing the node to act on. | |||
:raises: InvalidParameterValue on malformed parameter(s) | :raises: InvalidParameterValue on malformed parameter(s) | |||
:raises: MissingParameterValue on missing parameter(s) | :raises: MissingParameterValue on missing parameter(s) | |||
""" | """ | |||
self._validate_vendor(task) | self._validate_vendor(task) | |||
self._validate_driver_info(task) | self._validate_driver_info(task) | |||
self._validate_instance_info(task) | ||||
if task.driver.storage.should_write_image(task): | ||||
self._validate_instance_info(task) | ||||
def validate_inspection(self, task): | def validate_inspection(self, task): | |||
"""Validate that the node has required properties for inspection. | """Validate that the node has required properties for inspection. | |||
:param task: A TaskManager instance with the node being checked | :param task: A TaskManager instance with the node being checked | |||
:raises: MissingParameterValue if node is missing one or more required | :raises: MissingParameterValue if node is missing one or more required | |||
parameters | parameters | |||
:raises: UnsupportedDriverExtension | :raises: UnsupportedDriverExtension | |||
""" | """ | |||
try: | try: | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 8 lines changed or added |