]>
Commit | Line | Data |
---|---|---|
936218b8 WB |
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 | |
1accc6da AD |
15 | bridge-ports eth0 |
16 | bridge-stp off | |
17 | bridge-fd 0 | |
936218b8 WB |
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 | |
1accc6da AD |
34 | bridge-ports eth0 |
35 | bridge-stp off | |
36 | bridge-fd 0 | |
936218b8 WB |
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 | |
1accc6da AD |
69 | bridge-ports eth0 |
70 | bridge-stp off | |
71 | bridge-fd 0 | |
936218b8 WB |
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; |