Merge "Add container_id into VIFSriovDriver binding driver"
This commit is contained in:
commit
afe74372bd
|
@ -40,13 +40,13 @@ class VIFSriovDriver(object):
|
|||
try:
|
||||
func(self, *args, **kwargs)
|
||||
finally:
|
||||
if self._lock.acquired:
|
||||
if self._lock and self._lock.acquired:
|
||||
self._lock.release()
|
||||
return
|
||||
return wrapped
|
||||
|
||||
@release_lock_object
|
||||
def connect(self, vif, ifname, netns):
|
||||
def connect(self, vif, ifname, netns, container_id):
|
||||
physnet = vif.physnet
|
||||
|
||||
h_ipdb = b_base.get_ipdb()
|
||||
|
@ -74,7 +74,7 @@ class VIFSriovDriver(object):
|
|||
iface.mtu = vif.network.mtu
|
||||
iface.up()
|
||||
|
||||
def disconnect(self, vif, ifname, netns):
|
||||
def disconnect(self, vif, ifname, netns, container_id):
|
||||
# NOTE(k.zaitsev): when netns is deleted the interface is
|
||||
# returned automatically to host netns. We may reset
|
||||
# it to all-zero state
|
||||
|
|
|
@ -70,9 +70,10 @@ class TestDriverMixin(test_base.TestCase):
|
|||
}
|
||||
)
|
||||
mock_exit = mock.Mock(return_value=None)
|
||||
self.ipdbs[netns] = mock.Mock(
|
||||
__enter__=mock.Mock(return_value=mock_ipdb),
|
||||
__exit__=mock_exit)
|
||||
mock_ipdb.__exit__ = mock_exit
|
||||
mock_ipdb.__enter__ = mock.Mock(return_value=mock_ipdb)
|
||||
self.ipdbs[netns] = mock_ipdb
|
||||
|
||||
return mock_ipdb, mock_exit
|
||||
|
||||
@mock.patch('kuryr_kubernetes.cni.binding.base.get_ipdb')
|
||||
|
@ -206,3 +207,27 @@ class TestNestedMacvlanDriver(TestDriverMixin, test_base.TestCase):
|
|||
|
||||
def test_disconnect(self):
|
||||
self._test_disconnect()
|
||||
|
||||
|
||||
class TestSriovDriver(TestDriverMixin, test_base.TestCase):
|
||||
def setUp(self):
|
||||
super(TestSriovDriver, self).setUp()
|
||||
self.vif = fake._fake_vif(objects.vif.VIFSriov)
|
||||
self.vif.physnet = 'test_physnet'
|
||||
|
||||
@mock.patch('kuryr_kubernetes.cni.binding.sriov.VIFSriovDriver.'
|
||||
'_get_host_pf_names')
|
||||
@mock.patch('kuryr_kubernetes.cni.binding.sriov.VIFSriovDriver.'
|
||||
'_get_available_vf_info')
|
||||
def test_connect(self, m_avail_vf_info, m_host_pf_names):
|
||||
m_avail_vf_info.return_value = [self.ifname, 1, 'h_interface']
|
||||
m_host_pf_names.return_value = 'h_interface'
|
||||
self._test_connect()
|
||||
|
||||
self.assertEqual(self.ifname, self.m_c_iface.ifname)
|
||||
self.assertEqual(1, self.m_c_iface.mtu)
|
||||
self.assertEqual(str(self.vif.address), self.m_c_iface.address)
|
||||
self.m_c_iface.up.assert_called_once_with()
|
||||
|
||||
def test_disconnect(self):
|
||||
self._test_disconnect()
|
||||
|
|
Loading…
Reference in New Issue