This replaces the unused code (due to API versioning) in the ironic
driver's implementation of `network_binding_host_id`, to code that
actually enables the multitenant networking support in ironic.
While building this out, we changed direction and ended with the node's
field being called `network_interface` instead of `network_provider`.
This patch changes this to match, and bumps the ironic API version used
to 1.20, where this feature is introduced.
The old code also assumed ironic would have only two network interfaces,
"neutron" and "none". This became three - "neutron", "flat", and
"noop".[0] "neutron" is the only interface that requires returning None
from `network_binding_host_id`, while the others should match the old
behavior. Change the code to only do this for the neutron network
interface, instead of doing this for anything not called 'flat'.
[0] https://git.openstack.org/cgit/openstack/ironic/tree/setup.cfg#n90
Depends-On: I09a42c8e54d7782c591415e53fccade972ae8bdb
Depends-On: I3c135a4a2c79cfb0b9d63d9d31009330c2abb680
Change-Id: I9d036fd5d209ccd321fbd28117660494a7bcb74d
Implements: blueprint ironic-networks-support
Co-Authored-By: Hironori Shiina <shiina.hironori@jp.fujitsu.com>