[RFE] API to get driver properties for a dynamic driver + non-default interfaces
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ironic |
Invalid
|
Wishlist
|
Unassigned |
Bug Description
PROBLEM
=======
Ironic doesn't provide any REST API to get access to the driver properties associated with a dynamic driver (hardware type) and non-default interfaces.
'GET /v1/drivers/
For classic drivers, this GET returns all the driver-related properties that are needed for setting the node's driver-related information.
However, for dynamic drivers (or hardware types), the GET returns the driver-related information associated with that hardware type AND its default interfaces. A node that uses a particular hardware type may not necessarily also use that hardware type's default interfaces. There is no API that will return all the driver-related information needed for this node.
For example, the difference between the response for 'agent_ipmitool' (classic) and 'ipmi' (dynamic) drivers is that the response for ipmi contains everything as agent_ipmitool, EXCEPT that ipmi is missing:
- 'image_http_proxy'
- 'image_https_proxy
- 'image_no_proxy',
- 'ipmi_terminal_
This is because ipmi's default console interface is 'no-console' and default deploy interface is 'iscsi', while agent_ipmitool uses 'direct' for the deploy interface (which uses the image_* information) and ipmitool-
ipmi_terminal_
So for a node that has driver = 'impi' and console_interface = 'ipmitool-
tags: | added: needs-spec |
Changed in ironic: | |
assignee: | Ruby Loo (rloo) → nobody |
See musings in Dmitry's etherpad: https:/ /etherpad. openstack. org/p/ironic- driver- properties- reform