]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test-network: clear state file before starting networkd
authorYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 28 Nov 2018 19:03:56 +0000 (20:03 +0100)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 28 Nov 2018 20:40:57 +0000 (21:40 +0100)
Otherwise, some tests may disturb others, e.g.,
NetworkdNetWorkTests.test_routing_policy_rule_port_range and
NetworkdNetWorkTests.test_routing_policy_rule.

test/test-network/systemd-networkd-tests.py

index 37a02292208f81eba3a24e2b99fc1c4cd5c649fb..52823dc7405a326d1edd0bdaa858746a89f0bec0 100755 (executable)
@@ -15,6 +15,7 @@ import threading
 from shutil import copytree
 
 network_unit_file_path='/run/systemd/network'
+networkd_runtime_directory='/run/systemd/netif'
 networkd_ci_path='/run/networkd-ci'
 network_sysctl_ipv6_path='/proc/sys/net/ipv6/conf'
 network_sysctl_ipv4_path='/proc/sys/net/ipv4/conf'
@@ -118,7 +119,12 @@ class Utilities():
             os.remove(dnsmasq_log_file)
 
     def start_networkd(self):
-        subprocess.check_call('systemctl restart systemd-networkd', shell=True)
+        if (os.path.exists(os.path.join(networkd_runtime_directory, 'state'))):
+            subprocess.check_call('systemctl stop systemd-networkd', shell=True)
+            os.remove(os.path.join(networkd_runtime_directory, 'state'))
+            subprocess.check_call('systemctl start systemd-networkd', shell=True)
+        else:
+            subprocess.check_call('systemctl restart systemd-networkd', shell=True)
         time.sleep(5)
 
 global ip