Ejemplo n.º 1
0
    def test_resynchronize_multi_ports(self):
        self._api._rpc_client_instance = mock.MagicMock(
            name='rpc_client_instance')
        self._api._rpc_client_instance.return_value = None

        vm_uuid = str(uuid.uuid1())
        vif_uuid = str(uuid.uuid1())
        port1 = ttypes.Port(self._api._uuid_string_to_hex(vif_uuid),
                            self._api._uuid_string_to_hex(vm_uuid), 'tapX',
                            '0.0.0.0', [0] * 16, 'aa:bb:cc:ee:ff:00')
        self._api.add_port(vm_uuid, vif_uuid, 'tapX', 'aa:bb:cc:ee:ff:00')

        vm_uuid = str(uuid.uuid1())
        vif_uuid = str(uuid.uuid1())
        port2 = ttypes.Port(self._api._uuid_string_to_hex(vif_uuid),
                            self._api._uuid_string_to_hex(vm_uuid), 'tapY',
                            '0.0.0.0', [0] * 16, '11:22:33:44:55:66')
        self._api.add_port(vm_uuid, vif_uuid, 'tapY', '11:22:33:44:55:66')

        mock_client = mock.Mock()
        self._api._rpc_client_instance.return_value = mock_client
        self._api.connect()
        self._api._resynchronize()
        mock_client.AddPort.assert_called_with([port1, port2])
Ejemplo n.º 2
0
    def test_resynchronize(self):
        self._api._rpc_client_instance = mock.MagicMock(
            name='rpc_client_instance')
        self._api._rpc_client_instance.return_value = None

        vm_uuid = str(uuid.uuid1())
        vif_uuid = str(uuid.uuid1())
        port1 = ttypes.Port(self._api._uuid_string_to_hex(vif_uuid),
                            self._api._uuid_string_to_hex(vm_uuid), 'tapX',
                            '0.0.0.0', [0] * 16, 'aa:bb:cc:ee:ff:00')
        self._api.add_port(vm_uuid, vif_uuid, 'tapX', 'aa:bb:cc:ee:ff:00')

        mock_client = mock.Mock()
        self._api._rpc_client_instance.return_value = mock_client
        self._api.periodic_connection_check()
        mock_client.AddPort.assert_called_with([port1])
Ejemplo n.º 3
0
subprocess.call('ip link set %s up' % (peth), shell=True)

# finally, create the Contrail port
print "=========>>> CREATE & ADD THE CONTRAIL PORT ... ..."
from contrail_vrouter_api.gen_py.instance_service import ttypes
from contrail_utils import vrouter_rpc, uuid_from_string, uuid_array_to_str

print 'Execute>> Delete port %s' % vm_interface.uuid
rpc = vrouter_rpc()
rpc.DeletePort(uuid_from_string(vm_interface.uuid))

print 'Execute>> Add port %s' % vm_interface.uuid
port = ttypes.Port(
    uuid_from_string(vm_interface.uuid),
    uuid_from_string(vm_instance.uuid),
    peth,
    ip,
    uuid_from_string(vnet.uuid),
    mac,
)
rpc.AddPort([port])

print(
    dict(
        port_id=uuid_array_to_str(port.port_id),
        vm_id=vm_instance.uuid,
        net_id=vnet.uuid,
        vmi_id=vm_interface.uuid,
        veth=peth,
        netns=ns_name,
        ip=ip,
        mac=mac,