35cfc4a147
when taking over an ACTIVE netboot-ed node with driver based on PXEBoot,
the `PXEBoot.prepare_instance` method fails as our current logic of
generating a 'service' mode PXE config relies on editing PXE env files
that must already exist on disk but are missing from the new conductor host
in this case.
This patch forces this method to first re-create the PXE env from scratch
for ACTIVE nodes when PXE config file is missing before attempting
to change it.
It does not try to re-download the deploy ramdisk and generate options for it
though.
It also does not try to re-set boot device for ACTIVE nodes as that
should have already have been set earlier before actual transition to
ACTIVE.
In order to make the logic cleaner, this patch also refactors private methods
for building pxe options to be deploy-vs-instance oriented instead of
pxe-vs-ipxe oriented.
Change-Id: I264d5477523f57552aadf2809021a9a63fee2730
Partial-Bug: #1646038
Closes-Bug: #1516816
(cherry picked from commit
|
||
---|---|---|
api-ref | ||
devstack | ||
doc/source | ||
etc | ||
install-guide/source | ||
ironic | ||
ironic_tempest_plugin | ||
releasenotes | ||
tools | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.testr.conf | ||
CONTRIBUTING.rst | ||
LICENSE | ||
README.rst | ||
RELEASE-NOTES | ||
Vagrantfile | ||
babel.cfg | ||
driver-requirements.txt | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini | ||
vagrant.yaml |
README.rst
Ironic
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: http://docs.openstack.org/developer/ironic
- Source: http://git.openstack.org/cgit/openstack/ironic
- Bugs: http://bugs.launchpad.net/ironic
- Wiki: https://wiki.openstack.org/wiki/Ironic
- APIs: http://developer.openstack.org/api-ref/baremetal/index.html
Project status, bugs, and requests for feature enhancements (RFEs) are tracked on Launchpad: http://launchpad.net/ironic
For information on how to contribute to ironic, see http://docs.openstack.org/developer/ironic/dev/code-contribution-guide.html