mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-10-14 12:05:03 +00:00
contrib: extend "test-create-many-device-setup.sh" script
This commit is contained in:
parent
938f9b075f
commit
26090bafc9
|
@ -14,6 +14,7 @@ test -n "$ARG_OP" || die "specify the operation (setup, cleanup)"
|
|||
test "$USER" = root || die "must run as root"
|
||||
|
||||
NUM_DEVS="${NUM_DEVS:-50}"
|
||||
NUM_VLAN_DEVS="${NUM_VLAN_DEVS:-0}"
|
||||
|
||||
|
||||
DNSMASQ_PIDFILE="/tmp/nm-test-create-many-device-setup.dnsmasq.pid"
|
||||
|
@ -21,6 +22,11 @@ NM_TEST_CONF="/etc/NetworkManager/conf.d/99-my-test.conf"
|
|||
TEST_NETNS="T"
|
||||
|
||||
|
||||
_do_service() {
|
||||
test "$DO_SERVICE" = 1 || return 0
|
||||
"$@"
|
||||
}
|
||||
|
||||
_dnsmasq_kill() {
|
||||
pkill -F "$DNSMASQ_PIDFILE"
|
||||
rm -rf "$DNSMASQ_PIDFILE"
|
||||
|
@ -39,16 +45,16 @@ cleanup_base() {
|
|||
}
|
||||
|
||||
cmd_cleanup() {
|
||||
systemctl stop NetworkManager
|
||||
_do_service systemctl stop NetworkManager
|
||||
cleanup_base
|
||||
systemctl unmask NetworkManager-dispatcher
|
||||
systemctl enable NetworkManager-dispatcher
|
||||
systemctl start NetworkManager
|
||||
_do_service systemctl start NetworkManager
|
||||
}
|
||||
|
||||
cmd_setup() {
|
||||
|
||||
systemctl stop NetworkManager
|
||||
_do_service systemctl stop NetworkManager
|
||||
systemctl mask NetworkManager-dispatcher
|
||||
systemctl stop NetworkManager-dispatcher
|
||||
|
||||
|
@ -78,6 +84,10 @@ cmd_setup() {
|
|||
ip --netns "$TEST_NETNS" link set t-a$i up
|
||||
ip --netns "$TEST_NETNS" link set t-b$i up master t-br0
|
||||
done
|
||||
for i in `seq "$NUM_VLAN_DEVS"`; do
|
||||
ip --netns "$TEST_NETNS" link add link t-b1 name t-b1.$i type vlan id $i
|
||||
ip --netns "$TEST_NETNS" link set t-b1.$i up master t-br0
|
||||
done
|
||||
|
||||
cat <<EOF > "$NM_TEST_CONF"
|
||||
[main]
|
||||
|
@ -92,15 +102,24 @@ level=INFO
|
|||
enabled=0
|
||||
EOF
|
||||
|
||||
systemctl start NetworkManager
|
||||
_do_service systemctl start NetworkManager
|
||||
|
||||
for i in `seq "$NUM_DEVS"`; do
|
||||
ip --netns "$TEST_NETNS" link set t-a$i netns $$
|
||||
done
|
||||
|
||||
for i in `seq "$NUM_DEVS"`; do
|
||||
nmcli connection add save no type ethernet con-name c-a$i ifname t-a$i autoconnect no ipv4.method auto ipv6.method auto
|
||||
done
|
||||
if [ "$DO_ADD_CON" = 1 ]; then
|
||||
for i in `seq "$NUM_DEVS"`; do
|
||||
nmcli connection add save no type ethernet con-name c-a$i ifname t-a$i autoconnect no ipv4.method auto ipv6.method auto
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "$DO_ADD_VLAN_CON" = 1 ]; then
|
||||
for i in `seq "$NUM_VLAN_DEVS"`; do
|
||||
nmcli connection add save no type bridge con-name c-a1.$i-br ifname t-a1.$i.br autoconnect no ipv4.method auto ipv6.method auto bridge.stp 0
|
||||
nmcli connection add save no type vlan con-name c-a1.$i-po ifname t-a1.$i.po autoconnect no vlan.id $i vlan.parent t-a1 master c-a1.$i-br slave-type bridge
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue