diff options
author | Vladyslav Drok <vdrok@mirantis.com> | 2016-07-06 20:32:15 +0300 |
---|---|---|
committer | Vladyslav Drok <vdrok@mirantis.com> | 2016-07-07 19:56:13 +0300 |
commit | 0a5bb693efe6a5b417c5ba9a912292b498438f84 (patch) | |
tree | 0565bf921cd8d687d6a46fab40d53523bd09d0a1 /ironic/dhcp | |
parent | 22aba527fb045af58fa876f394c2bb923ed949c4 (diff) | |
download | ironic-0a5bb693efe6a5b417c5ba9a912292b498438f84.tar.gz |
Add internal_info field to ports and portgroups
In case of ports, it is also added to the API, as a readonly field.
It will be used for any port-specific internal information ironic
needs to store inside the port object. In this change we start using
it to store UUIDs of the cleaning ports that ironic creates, instead
of fiddling with port.extra['vif_port_id'], as extra is intended for
operator use only.
Partial-bug: #1526403
Change-Id: Ib62c3e32305619d0c55f8ec7e45b067f0f0b32d4
Diffstat (limited to 'ironic/dhcp')
-rw-r--r-- | ironic/dhcp/neutron.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/ironic/dhcp/neutron.py b/ironic/dhcp/neutron.py index 25f833ff0..15935a491 100644 --- a/ironic/dhcp/neutron.py +++ b/ironic/dhcp/neutron.py @@ -205,7 +205,10 @@ class NeutronDHCPApi(base.BaseDHCP): :raises: InvalidIPv4Address """ - vif = p_obj.extra.get('vif_port_id') + # NOTE(vdrok): This works because cleaning_vif_port_id doesn't exist + # when we're in deployment/tenant network + vif = (p_obj.internal_info.get('cleaning_vif_port_id') or + p_obj.extra.get('vif_port_id')) if not vif: obj_name = 'portgroup' if isinstance(p_obj, objects.Port): |