adding a new driver requires changing patcher.py
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ironic |
Fix Released
|
Medium
|
Lucas Alvares Gomes |
Bug Description
When adding a new deploy driver to Ironic (eg, the IPA and iLO drivers), we currently have to change the nova.virt.
In nova/virt/
GenericDriver
PXEDriverFiel
The PXEDriverFields class never calls any methods in the base class, so there's currently no benefit to the inheritence. Further, the PXEDriverFIelds class contains all the handling of "instance_info" -- which, by design, should be common across *all* drivers (not just PXE drivers). Since the GenericDriverFields class does not do anything, a node for which this class is used will not receive any "instance_info" and will be unprovisionable by Ironic. Thus the problem encountered by the IPA and iLO drivers.
In Icehouse, Ironic required the pxe deploy kernel & ramdisk to be stored on the Nova flavor. This is no longer required, but is still allowed for backwards-
https:/
All the rest, which modifies "instance_info", should be moved to the GenericDriverFields class.
summary: |
- patcher.py inappropriately handling instance_info as though it's part of - the PXE driver + adding a new driver requires changing patcher.py |
Changed in ironic: | |
status: | New → Triaged |
importance: | Undecided → High |
milestone: | none → juno-3 |
description: | updated |
tags: | added: nova-driver |
Changed in ironic: | |
importance: | High → Medium |
Changed in ironic: | |
assignee: | nobody → Lucas Alvares Gomes (lucasagomes) |
Changed in ironic: | |
assignee: | Lucas Alvares Gomes (lucasagomes) → Devananda van der Veen (devananda) |
Changed in ironic: | |
assignee: | Devananda van der Veen (devananda) → Lucas Alvares Gomes (lucasagomes) |
Changed in ironic: | |
status: | Fix Committed → Fix Released |
Changed in ironic: | |
milestone: | juno-3 → 2014.2 |
Fix proposed to branch: master /review. openstack. org/112623
Review: https:/