Ansible deploy interface
ironic.drivers.modules.ansible.deploy.
AnsibleDeploy
(*args, **kwargs)[source]¶Bases: ironic.drivers.modules.agent_base.HeartbeatMixin
, ironic.drivers.base.DeployInterface
Interface for deploy-related actions.
continue_deploy
(task)[source]¶Continues the deployment of baremetal node.
This method continues the deployment of the baremetal node after the ramdisk have been booted.
task – a TaskManager instance
execute_clean_step
(task, step)[source]¶Execute a clean step.
task – a TaskManager object containing the node
step – a clean step dictionary to execute
None
get_clean_steps
(task)[source]¶Get the list of clean steps from the file.
task – a TaskManager object containing the node
A list of clean step dictionaries
prepare_cleaning
(task)[source]¶Boot into the ramdisk to prepare for cleaning.
task – a TaskManager object containing the node
NodeCleaningFailure – if the previous cleaning ports cannot be removed or if new cleaning ports cannot be created
None or states.CLEANWAIT for async prepare.
reboot_to_instance
(task)[source]¶Method invoked after the deployment is completed.
task – a TaskManager instance
take_over
(task)[source]¶Take over management of this task’s node from a dead conductor.
If conductors’ hosts maintain a static relationship to nodes, this method should be implemented by the driver to allow conductors to perform the necessary work during the remapping of nodes to conductors when a conductor joins or leaves the cluster.
Neutron must forward DHCP BOOT requests to a conductor which has prepared the tftpboot environment for the given node. When a conductor goes offline, another conductor must change this setting in Neutron as part of remapping that node’s control to itself. This is performed within the takeover method.
task – A TaskManager instance containing the node to act on.
tear_down_cleaning
(task)[source]¶Clean up the PXE and DHCP files after cleaning.
task – a TaskManager object containing the node
NodeCleaningFailure – if the cleaning ports cannot be removed
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.