summaryrefslogtreecommitdiffstats
path: root/debian/tests/py-frr-reload
blob: 6dfef33f08d980fc6a5bc29f4dacbebf6f428fc4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/sh
set -e

# should have been started on install, but policy may have inhibited that
service frr restart

# these should be running by default
pgrep watchfrr
pgrep zebra
pgrep staticd

# configure interactively, save to file
vtysh -c 'configure terminal' -c 'ip route 198.51.100.0/28 127.0.0.1'
vtysh -c 'show running-config' | grep -q 'ip route 198.51.100.0/28 127.0.0.1'
vtysh -c 'write memory'

grep -q 'ip route 198.51.100.0/28 127.0.0.1' /etc/frr/frr.conf

# configure in file, check interactively
sed -e '/^ip route 198.51.100.0\/28 127.0.0.1/ c ip route 198.51.100.64/28 127.0.0.1' \
	-i /etc/frr/frr.conf

service frr reload

# wait for the new config to load
for __t in $(seq 1 10); do
	if vtysh -c 'show running-config' | grep -q 'ip route 198.51.100.64/28 127.0.0.1'; then
		break
	fi
	sleep "$__t"
done

# fail if the old config is still loaded
if vtysh -c 'show running-config' | grep -q 'ip route 198.51.100.0/28 127.0.0.1'; then
	exit 1
fi