def test_upgrade_volatile_running_config(self): with namedTemporaryDir() as pdir, namedTemporaryDir() as vdir: with mock.patch.object(netconf, 'CONF_RUN_DIR', pdir),\ mock.patch.object(netconf, 'CONF_VOLATILE_RUN_DIR', vdir): vol_rconfig = netconf.RunningConfig(volatile=True) vol_rconfig.save() netupgrade.upgrade() pers_rconfig = netconf.RunningConfig() self.assertFalse(vol_rconfig.config_exists()) self.assertTrue(pers_rconfig.config_exists())
def _process_domxml(tree): root = tree.getroot() devices = root.find('devices') running_config = netconfpersistence.RunningConfig() for interface in devices.findall('interface'): if interface.get('type') == 'bridge': elem_virtualport = interface.find('virtualport') elem_source = interface.find('source') # 'source bridge' element must exist source_bridge = elem_source.get('bridge') source_bridge = _find_non_vlan_network(running_config, source_bridge) net_attrs = running_config.networks.get(source_bridge) if net_attrs is None: print('Network', source_bridge, 'does not exist', file=sys.stderr) sys.exit(1) if ovs_utils.is_ovs_network(net_attrs): _bind_iface_to_ovs(elem_source, elem_virtualport, interface, net_attrs) else: _bind_iface_to_linux_bridge(elem_source, elem_virtualport, interface, net_attrs, source_bridge)
def create_running_config(volatile): conf_dir_to_mock = 'CONF_VOLATILE_RUN_DIR' if volatile else 'CONF_RUN_DIR' tempdir = tempfile.mkdtemp() with mock.patch.object(netconf, conf_dir_to_mock, tempdir): try: rconfig = netconf.RunningConfig(volatile) yield rconfig finally: rconfig.delete() assert not os.path.exists(tempdir)
def persist_numvfs(device_name, numvfs): running_config = netconfpersistence.RunningConfig() running_config.set_device(device_name, {'sriov': {'numvfs': numvfs}}) running_config.save()