|
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
|