-
- if node['type'] != NodeType.DUT:
- raise ValueError('Node type is not a DUT')
- hostname = Topology.get_node_hostname(node)
-
- cpuconfig = ""
- pciconfig = ""
- socketmemconfig = DEFAULT_SOCKETMEM_CONFIG
- heapsizeconfig = ""
- rxqueuesconfig = ""
- txqueuesconfig = ""
- nomultiseg = ""
- enablevhostuser = ""
- cryptodevconfig = ""
- uiodriverconfig = ""
- snatconfig = ""
-
- if hostname in self._nodeconfig:
- cfg = self._nodeconfig[hostname]
- if 'cpu_config' in cfg:
- cpuconfig = " " + "\n ".join(cfg['cpu_config'])
-
- if 'pci_addrs' in cfg:
- pciconfig = " dev " + "\n dev ".join(cfg['pci_addrs'])
-
- if 'socketmem_config' in cfg:
- socketmemconfig = cfg['socketmem_config']
-
- if 'cryptodev_config' in cfg:
- cryptodevconfig = cfg['cryptodev_config']
-
- if 'uio_driver_config' in cfg:
- uiodriverconfig = cfg['uio_driver_config']
-
- if 'heapsize_config' in cfg:
- heapsizeconfig = "\nheapsize {}\n".\
- format(cfg['heapsize_config'])
-
- if 'rxqueues_config' in cfg:
- rxqueuesconfig = " " + "\n ".join(cfg['rxqueues_config'])
-
- if 'no_multi_seg_config' in cfg:
- nomultiseg = " " + "\n ".join(cfg['no_multi_seg_config'])
-
- if 'enable_vhost_user' in cfg:
- enablevhostuser = " " + "\n ".join(cfg['enable_vhost_user'])
-
- if 'snat_config' in cfg:
- snatconfig = "snat {\n"
- snatconfig += " " + "\n ".join(cfg['snat_config'])
- snatconfig += "\n}"
-
- vppconfig = VPP_CONFIG_TEMPLATE.format(cpuconfig=cpuconfig,
- pciconfig=pciconfig,
- cryptodevconfig=cryptodevconfig,
- uiodriverconfig=uiodriverconfig,
- socketmemconfig=socketmemconfig,
- heapsizeconfig=heapsizeconfig,
- rxqueuesconfig=rxqueuesconfig,
- txqueuesconfig=txqueuesconfig,
- nomultiseg=nomultiseg,
- enablevhostuser=enablevhostuser,
- snatconfig=snatconfig)
-
- logger.debug('Writing VPP config to host {}: "{}"'.format(hostname,
- vppconfig))