[openstack-dev] [nova] Should we delete the (unexposed) os-pci API?
Matt Riedemann
mriedemos at gmail.com
Fri Mar 17 20:19:06 UTC 2017
I was working on writing a spec for a blueprint [1] that would have
touched on the os-pci API [2] and got to documenting about how it's not
even documented [3] when Alex pointed out that the API is not even
enabled [4][5].
It turns out that the os-pci API was added in the Nova V3 API and pulled
back out, and [5] was a tracking bug to add it back in with a
microversion, and that never happened.
Given the ugliness described in [3], and that I think our views on
exposing this type of information have changed [6] since it was
originally added, I'm proposing that we just delete the API code.
The API code itself was added back in Icehouse [7].
I tend to think if someone cared about needing this information in the
REST API, they would have asked for it by now. As it stands, it's just
technical debt and even if we did expose it, there are existing issues
in the API, like the fact that the os-hypervisors extension just takes
the compute_nodes.pci_stats dict and dumps it to json out of the REST
API with no control over the keys in the response. That means if we ever
change the fields in the PciDevicePool object, we implicitly introduce a
backward incompatible change in the REST API.
So I move that we delete the (dead) code. Are there good reasons not to?
[1]
https://blueprints.launchpad.net/nova/+spec/service-hyper-pci-uuid-in-api
[2]
https://github.com/openstack/nova/blob/15.0.0/nova/api/openstack/compute/pci.py
[3] https://bugs.launchpad.net/nova/+bug/1673869
[4] https://github.com/openstack/nova/blob/15.0.0/setup.cfg#L132
[5] https://bugs.launchpad.net/nova/+bug/1426241
[6]
https://docs.openstack.org/developer/nova/policies.html?highlight=metrics#metrics-gathering
[7] https://review.openstack.org/#/c/51135/
--
Thanks,
Matt
More information about the OpenStack-dev
mailing list