예제 #1
0
    def release_vif(self, pod, vif, project_id=None, security_groups=None):
        compute = clients.get_compute_client()

        vm_id = self._get_parent_port(pod).device_id
        LOG.debug("release_vif for vm_id %s %s", vm_id, vif.id)

        try:
            compute.delete_server_interface(vif.id, server=vm_id)
        except o_exc.SDKException:
            LOG.warning("Unable to delete interface %s for server %s.",
                        vif.id, vm_id)
            raise
예제 #2
0
    def request_vif(self, pod, project_id, subnets, security_groups):
        os_net = clients.get_network_client()
        compute = clients.get_compute_client()

        vm_id = self._get_parent_port(pod).device_id
        net_id = utils.get_network_id(subnets)

        try:
            result = compute.create_server_interface(vm_id, net_id=net_id)
        except o_exc.SDKException:
            LOG.warning("Unable to create interface for server %s.", vm_id)
            raise
        port = os_net.get_port(result.port_id)
        return ovu.neutron_to_osvif_vif_dpdk(port, subnets, pod)
예제 #3
0
    def test_setup_clients(self, m_k8s, m_cfg, m_openstack):
        k8s_api_root = 'http://127.0.0.1:1234'

        openstacksdk_mock = mock.Mock()
        openstacksdk_mock.load_balancer = mock.Mock()
        openstacksdk_mock.network = mock.Mock()
        openstacksdk_mock.compute = mock.Mock()
        k8s_dummy = object()

        m_cfg.kubernetes.api_root = k8s_api_root
        m_k8s.return_value = k8s_dummy
        m_openstack.return_value = openstacksdk_mock

        clients.setup_clients()

        m_k8s.assert_called_with(k8s_api_root)
        self.assertIs(k8s_dummy, clients.get_kubernetes_client())
        self.assertIs(openstacksdk_mock, clients.get_openstacksdk())
        self.assertIs(openstacksdk_mock.load_balancer,
                      clients.get_loadbalancer_client())
        self.assertIs(openstacksdk_mock.network, clients.get_network_client())
        self.assertIs(openstacksdk_mock.compute, clients.get_compute_client())