<div dir="ltr">tldr; the boot / deploy interface split we did broke an out of tree driver. I've proposed a patch. We should get a fix into stable/liberty too.<div><br></div><div>Longer version...</div><div><br></div><div>I was rebasing my AMTTool driver [0] on top of master because the in-tree one still does not work for me, only to discover that my driver suddenly failed to deploy. I have filed this bug</div><div>  <a href="https://bugs.launchpad.net/ironic/+bug/1502980">https://bugs.launchpad.net/ironic/+bug/1502980</a><br></div><div>because we broke at least one out of tree driver (mine). I highly suspect we've broken many other out of tree drivers that relied on either the PXEDeploy or AgentDeploy interfaces that were present in Kilo release. Both classes in Liberty are making explicit calls to "task.driver.boot" -- and kilo-era driver classes did not define this interface.</div><div><br></div><div>I worked out a patch for the AgentDeploy driver and have proposed it here:</div><div>  <a href="https://review.openstack.org/#/c/231215/1">https://review.openstack.org/#/c/231215/1</a></div><div><br></div><div>I'd like to ask folks to review it quickly -- we should fix this ASAP and backport it to stable/liberty before the next release, if possible. We should also make a similar fix for the PXEDeploy class. If anyone gets to this before I do, please reply here and let me know so we don't duplicate effort.</div><div><br></div><div>Also, Jim already spotted something in the review that is a bit concerning. It seems like the IloVirtualMediaAgentVendorInterface class expects the driver it is attached to *not* to have a boot interface and *not* to call boot.clean_up_ramdisk. Conversely, other drivers may be expecting AgentVendorInterface to call boot.clean_up_ramdisk -- since that was its default behavior in Kilo. I'm not sure what the right way to fix this is, but I lean towards updating the in-tree driver so we remain backwards-compatible for out of tree drivers.</div><div><br></div><div><br></div><div>-Devananda<br></div><div><br></div><div>[0] <a href="https://github.com/devananda/ironic/tree/new-amt-driver">https://github.com/devananda/ironic/tree/new-amt-driver</a></div><div><br></div></div>