Some drivers use a periodic task to poll for completion of a deploy or clean step. The iDRAC RAID driver is one example of this. In https://review.opendev.org/#/c/676152, the agent heartbeat handler was modified to resume deployment if not currently in the core deploy step. This makes sense for the ilo driver, which does not poll for completion of RAID configuration, but the iDRAC driver polls the lifecycle controller's job queue, and expects to be able to resume deployment once the job is complete. However, there is now a race between the agent heartbeat as the node boots up, and the job queue poller. This change adds new flags, cleaning_polling and deployment_polling, which can be used by a driver to signal that they are polling for completion of a deploy step, and that the agent heartbeat should not be used for this purpose. We also add here some more cleanup of the cleaning and deployment step metadata in driver_internal_info, since if these fields are left in place they may affect subsequent cleaning or deployment steps. Change-Id: I34591440ab993a80a0cc88be6e10e33f1ae4a660 Story: 2003817 Task: 36563
Ironic
Team and repository tags
Overview
Ironic consists of an API and plug-ins for managing and provisioning physical machines in a security-aware and fault-tolerant manner. It can be used with nova as a hypervisor driver, or standalone service using bifrost. By default, it will use PXE and IPMI to interact with bare metal machines. Ironic also supports vendor-specific plug-ins which may implement additional functionality.
Ironic is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.
Project resources
- Documentation: https://docs.openstack.org/ironic/latest
- Source: https://opendev.org/openstack/ironic
- Bugs: https://storyboard.openstack.org/#!/project/943
- Wiki: https://wiki.openstack.org/wiki/Ironic
- APIs: https://docs.openstack.org/api-ref/baremetal/index.html
- Release Notes: https://docs.openstack.org/releasenotes/ironic/
- Design Specifications: https://specs.openstack.org/openstack/ironic-specs/
Project status, bugs, and requests for feature enhancements (RFEs) are tracked in StoryBoard: https://storyboard.openstack.org/#!/project/943
For information on how to contribute to ironic, see https://docs.openstack.org/ironic/latest/contributor