Add namespace info to created ports
This patch add information about the namespace the pod is running on at the Neutron port name (when port_debug set to True). For debugging it may be nice to differentiate between ports belonging to pods with the same name but in different namespaces Depends-on: Idab7e0fe9ecc6e23a2d27d89b81ac9bd4ad8ca68 Change-Id: I783f2ff58ff079a45d79f380645ed064d19032f3
This commit is contained in:
parent
db9d28da79
commit
41173016f2
|
@ -132,7 +132,7 @@ class NeutronPodVIFDriver(base.PodVIFDriver):
|
|||
return ids[0]
|
||||
|
||||
def _get_port_name(self, pod):
|
||||
return pod['metadata']['name']
|
||||
return "%(namespace)s/%(name)s" % pod['metadata']
|
||||
|
||||
def _get_device_id(self, pod):
|
||||
return pod['metadata']['uid']
|
||||
|
|
|
@ -223,6 +223,9 @@ class BaseVIFPool(base.VIFPoolDriver):
|
|||
except IOError:
|
||||
LOG.exception("I/O error creating the health check file.")
|
||||
|
||||
def _get_port_name(self, pod):
|
||||
return "%(namespace)s/%(name)s" % pod['metadata']
|
||||
|
||||
|
||||
class NeutronVIFPool(BaseVIFPool):
|
||||
"""Manages VIFs for Bare Metal Kubernetes Pods."""
|
||||
|
@ -241,7 +244,7 @@ class NeutronVIFPool(BaseVIFPool):
|
|||
port_id,
|
||||
{
|
||||
"port": {
|
||||
'name': pod['metadata']['name'],
|
||||
'name': self._get_port_name(pod),
|
||||
'device_id': pod['metadata']['uid']
|
||||
}
|
||||
})
|
||||
|
@ -370,7 +373,7 @@ class NestedVIFPool(BaseVIFPool):
|
|||
port_id,
|
||||
{
|
||||
"port": {
|
||||
'name': pod['metadata']['name'],
|
||||
'name': self._get_port_name(pod),
|
||||
}
|
||||
})
|
||||
# check if the pool needs to be populated
|
||||
|
|
|
@ -327,9 +327,10 @@ class NeutronPodVIFDriver(test_base.TestCase):
|
|||
cls = neutron_vif.NeutronPodVIFDriver
|
||||
m_driver = mock.Mock(spec=cls)
|
||||
pod_name = mock.sentinel.pod_name
|
||||
pod = {'metadata': {'name': pod_name}}
|
||||
port_name = 'default/' + str(pod_name)
|
||||
pod = {'metadata': {'name': pod_name, 'namespace': 'default'}}
|
||||
|
||||
self.assertEqual(pod_name, cls._get_port_name(m_driver, pod))
|
||||
self.assertEqual(port_name, cls._get_port_name(m_driver, pod))
|
||||
|
||||
def test_get_device_id(self):
|
||||
cls = neutron_vif.NeutronPodVIFDriver
|
||||
|
|
|
@ -59,6 +59,10 @@ def get_pod_obj():
|
|||
}}
|
||||
|
||||
|
||||
def get_pod_name(pod):
|
||||
return "%(namespace)s/%(name)s" % pod['metadata']
|
||||
|
||||
|
||||
def get_port_obj(port_id=None, device_owner=None, ip_address=None):
|
||||
port_obj = {
|
||||
'allowed_address_pairs': [],
|
||||
|
@ -333,6 +337,7 @@ class NeutronVIFPool(test_base.TestCase):
|
|||
m_driver._available_ports_pools = {
|
||||
pool_key: collections.deque([port_id])}
|
||||
m_driver._existing_vifs = {port_id: port}
|
||||
m_driver._get_port_name.return_value = get_pod_name(pod)
|
||||
|
||||
oslo_cfg.CONF.set_override('ports_pool_min',
|
||||
5,
|
||||
|
@ -353,7 +358,7 @@ class NeutronVIFPool(test_base.TestCase):
|
|||
port_id,
|
||||
{
|
||||
"port": {
|
||||
'name': pod['metadata']['name'],
|
||||
'name': get_pod_name(pod),
|
||||
'device_id': pod['metadata']['uid']
|
||||
}
|
||||
})
|
||||
|
@ -375,6 +380,7 @@ class NeutronVIFPool(test_base.TestCase):
|
|||
m_driver._available_ports_pools = {
|
||||
pool_key: collections.deque([port_id])}
|
||||
m_driver._existing_vifs = {port_id: port}
|
||||
m_driver._get_port_name.return_value = get_pod_name(pod)
|
||||
|
||||
oslo_cfg.CONF.set_override('ports_pool_min',
|
||||
5,
|
||||
|
@ -392,7 +398,7 @@ class NeutronVIFPool(test_base.TestCase):
|
|||
port_id,
|
||||
{
|
||||
"port": {
|
||||
'name': pod['metadata']['name'],
|
||||
'name': get_pod_name(pod),
|
||||
'device_id': pod['metadata']['uid']
|
||||
}
|
||||
})
|
||||
|
@ -713,6 +719,7 @@ class NestedVIFPool(test_base.TestCase):
|
|||
m_driver._available_ports_pools = {
|
||||
pool_key: collections.deque([port_id])}
|
||||
m_driver._existing_vifs = {port_id: port}
|
||||
m_driver._get_port_name.return_value = get_pod_name(pod)
|
||||
|
||||
oslo_cfg.CONF.set_override('ports_pool_min',
|
||||
5,
|
||||
|
@ -730,7 +737,7 @@ class NestedVIFPool(test_base.TestCase):
|
|||
port_id,
|
||||
{
|
||||
"port": {
|
||||
'name': pod['metadata']['name'],
|
||||
'name': get_pod_name(pod),
|
||||
}
|
||||
})
|
||||
m_eventlet.assert_not_called()
|
||||
|
@ -751,6 +758,7 @@ class NestedVIFPool(test_base.TestCase):
|
|||
m_driver._available_ports_pools = {
|
||||
pool_key: collections.deque([port_id])}
|
||||
m_driver._existing_vifs = {port_id: port}
|
||||
m_driver._get_port_name.return_value = get_pod_name(pod)
|
||||
|
||||
oslo_cfg.CONF.set_override('ports_pool_min',
|
||||
5,
|
||||
|
@ -768,7 +776,7 @@ class NestedVIFPool(test_base.TestCase):
|
|||
port_id,
|
||||
{
|
||||
"port": {
|
||||
'name': pod['metadata']['name'],
|
||||
'name': get_pod_name(pod),
|
||||
}
|
||||
})
|
||||
m_eventlet.assert_called_once()
|
||||
|
|
Loading…
Reference in New Issue