Exemplo n.º 1
0
    def get_config_macvtap(self, instance, vif, image_meta,
                           inst_type, virt_type):
        conf = self.get_base_config(instance, vif, image_meta,
                                    inst_type, virt_type)

        vif_details = vif['details']
        macvtap_src = vif_details.get(network_model.VIF_DETAILS_MACVTAP_SOURCE)
        macvtap_mode = vif_details.get(network_model.VIF_DETAILS_MACVTAP_MODE)
        phys_interface = vif_details.get(
                                    network_model.VIF_DETAILS_PHYS_INTERFACE)

        missing_params = []
        if macvtap_src is None:
            missing_params.append(network_model.VIF_DETAILS_MACVTAP_SOURCE)
        if macvtap_mode is None:
            missing_params.append(network_model.VIF_DETAILS_MACVTAP_MODE)
        if phys_interface is None:
            missing_params.append(network_model.VIF_DETAILS_PHYS_INTERFACE)

        if len(missing_params) > 0:
            raise exception.VifDetailsMissingMacvtapParameters(
                                                vif_id=vif['id'],
                                                missing_params=missing_params)

        designer.set_vif_host_backend_direct_config(
            conf, macvtap_src, macvtap_mode)

        designer.set_vif_bandwidth_config(conf, inst_type)

        return conf
Exemplo n.º 2
0
 def test_set_vif_host_backend_direct_config(self):
     conf = config.LibvirtConfigGuestInterface()
     designer.set_vif_host_backend_direct_config(conf, "fake-devname", mode="passthrough")
     self.assertEqual("direct", conf.net_type)
     self.assertEqual("fake-devname", conf.source_dev)
     self.assertEqual("passthrough", conf.source_mode)
     self.assertEqual("virtio", conf.model)
Exemplo n.º 3
0
Arquivo: vif.py Projeto: YLTiny/nova
    def get_config_macvtap(self, instance, vif, image_meta, inst_type,
                           virt_type):
        conf = self.get_base_config(instance, vif['address'], image_meta,
                                    inst_type, virt_type, vif['vnic_type'])

        vif_details = vif['details']
        macvtap_src = vif_details.get(network_model.VIF_DETAILS_MACVTAP_SOURCE)
        macvtap_mode = vif_details.get(network_model.VIF_DETAILS_MACVTAP_MODE)
        phys_interface = vif_details.get(
            network_model.VIF_DETAILS_PHYS_INTERFACE)

        missing_params = []
        if macvtap_src is None:
            missing_params.append(network_model.VIF_DETAILS_MACVTAP_SOURCE)
        if macvtap_mode is None:
            missing_params.append(network_model.VIF_DETAILS_MACVTAP_MODE)
        if phys_interface is None:
            missing_params.append(network_model.VIF_DETAILS_PHYS_INTERFACE)

        if len(missing_params) > 0:
            raise exception.VifDetailsMissingMacvtapParameters(
                vif_id=vif['id'], missing_params=missing_params)

        designer.set_vif_host_backend_direct_config(conf, macvtap_src,
                                                    macvtap_mode)

        designer.set_vif_bandwidth_config(conf, inst_type)

        return conf
Exemplo n.º 4
0
    def get_config_mlnx_direct(self, instance, vif, image_meta, inst_type):
        conf = super(LibvirtGenericVIFDriver, self).get_config(instance, vif, image_meta, inst_type)

        devname = self.get_vif_devname_with_prefix(vif, DEV_PREFIX_ETH)
        designer.set_vif_host_backend_direct_config(conf, devname)

        return conf
Exemplo n.º 5
0
    def get_config_mlnx_direct(self, instance, vif, image_meta, inst_type):
        conf = super(LibvirtGenericVIFDriver,
                     self).get_config(instance, vif, image_meta, inst_type)

        devname = self.get_vif_devname_with_prefix(vif, DEV_PREFIX_ETH)
        designer.set_vif_host_backend_direct_config(conf, devname)

        return conf
Exemplo n.º 6
0
 def test_set_vif_host_backend_direct_config(self):
     conf = config.LibvirtConfigGuestInterface()
     designer.set_vif_host_backend_direct_config(conf, 'fake-devname',
                                                 mode="passthrough")
     self.assertEqual('direct', conf.net_type)
     self.assertEqual('fake-devname', conf.source_dev)
     self.assertEqual('passthrough', conf.source_mode)
     self.assertEqual('virtio', conf.model)
Exemplo n.º 7
0
Arquivo: vif.py Projeto: isyippee/nova
    def get_config_mlnx_direct(self, instance, vif, image_meta, inst_type, virt_type, host):
        conf = self.get_base_config(instance, vif, image_meta, inst_type, virt_type)

        devname = self.get_vif_devname_with_prefix(vif, DEV_PREFIX_ETH)
        designer.set_vif_host_backend_direct_config(conf, devname)

        designer.set_vif_bandwidth_config(conf, inst_type)

        return conf
Exemplo n.º 8
0
    def get_config_mlnx_direct(self, instance, vif, image_meta,
                               inst_type, virt_type):
        conf = self.get_base_config(instance, vif, image_meta,
                                    inst_type, virt_type)

        devname = self.get_vif_devname_with_prefix(vif, DEV_PREFIX_ETH)
        designer.set_vif_host_backend_direct_config(conf, devname)

        designer.set_vif_bandwidth_config(conf, inst_type)

        return conf