bump version to 4.0-63
[pve-common.git] / test / etc_network_interfaces / t.bridge-v4-v6.pl
1 my $ip = '10.0.0.2';
2 my $nm = '255.255.255.0';
3 my $gw = '10.0.0.1';
4 my $ip6 = 'fc05::1:2';
5 my $nm6 = '112';
6 my $gw6 = 'fc05::1:1';
7
8 r(load('base'));
9
10 new_iface('vmbr0', 'bridge', [{ family => 'inet' }], autostart => 1, bridge_ports => 'eth0');
11
12 expect load('base') . <<"EOF";
13 auto vmbr0
14 iface vmbr0 inet manual
15         bridge_ports eth0
16         bridge_stp off
17         bridge_fd 0
18
19 EOF
20
21 # add an ip and disable previously enabled autostart
22 update_iface('vmbr0',
23     [ { family => 'inet',
24         address => $ip,
25         netmask => $nm,
26         gateway => $gw } ],
27     autostart => 0);
28
29 expect load('base') . <<"EOF";
30 iface vmbr0 inet static
31         address  $ip
32         netmask  $nm
33         gateway  $gw
34         bridge_ports eth0
35         bridge_stp off
36         bridge_fd 0
37
38 EOF
39 save('with-ipv4', w());
40
41 update_iface('vmbr0',
42     [ { family => 'inet6',
43         address => $ip6,
44         netmask => $nm6,
45         gateway => $gw6 } ]);
46
47 expect load('with-ipv4') . <<"EOF";
48 iface vmbr0 inet6 static
49         address  $ip6
50         netmask  $nm6
51         gateway  $gw6
52
53 EOF
54
55 # idempotency
56 save('idem', w());
57 r(load('idem'));
58 expect load('idem');
59
60 # delete vmbr0's inet
61 delete_iface('vmbr0', 'inet');
62
63 # bridge ports must now appear in the inet6 block
64 expect load('base') . <<"EOF";
65 iface vmbr0 inet6 static
66         address  $ip6
67         netmask  $nm6
68         gateway  $gw6
69         bridge_ports eth0
70         bridge_stp off
71         bridge_fd 0
72
73 EOF
74
75 # idempotency
76 save('idem', w());
77 r(load('idem'));
78 expect load('idem');
79
80 # delete vmbr0 completely
81 delete_iface('vmbr0');
82 expect load('base');
83
84 1;