From cdb7ec5b9afa7a78688f73dfd7a553b2d8bbe893 Mon Sep 17 00:00:00 2001
From: Gary Kotton <gkotton@vmware.com>
Date: Sun, 21 Jan 2018 03:02:57 -0800
Subject: [PATCH] TVD: ensure get_ports works for DVS plugin

Get ports would not populate the nic type.

Change-Id: Ic57eca5f71d02e3172df501c8528ba8aa3528e07
---
 vmware_nsx/plugins/nsx/plugin.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/vmware_nsx/plugins/nsx/plugin.py b/vmware_nsx/plugins/nsx/plugin.py
index 401f1dec7c..dab61be5c5 100644
--- a/vmware_nsx/plugins/nsx/plugin.py
+++ b/vmware_nsx/plugins/nsx/plugin.py
@@ -400,6 +400,7 @@ class NsxTVDPlugin(agentschedulers_db.AZDhcpAgentSchedulerDbMixin,
                     limit, marker, page_reverse))
             # Add port extensions
             for port in ports[:]:
+                port_model = None
                 if 'id' in port:
                     port_model = self._get_port(context, port['id'])
                     resource_extend.apply_funcs('ports', port, port_model)
@@ -407,6 +408,10 @@ class NsxTVDPlugin(agentschedulers_db.AZDhcpAgentSchedulerDbMixin,
                 if p == req_p or req_p is None:
                     if hasattr(p, '_extend_get_port_dict_qos_and_binding'):
                         p._extend_get_port_dict_qos_and_binding(context, port)
+                    else:
+                        if not port_model:
+                            port_model = port
+                        p._extend_port_dict_binding(port, port_model)
                     if hasattr(p,
                                '_remove_provider_security_groups_from_list'):
                         p._remove_provider_security_groups_from_list(port)