]>
Commit | Line | Data |
---|---|---|
378c6656 | 1 | my $ip = '10.0.0.2/24'; |
936218b8 | 2 | my $gw = '10.0.0.1'; |
378c6656 | 3 | my $ip6 = 'fc05::1:2/112'; |
936218b8 WB |
4 | my $gw6 = 'fc05::1:1'; |
5 | ||
6 | r(load('base')); | |
7 | ||
8 | new_iface('vmbr0', 'bridge', [{ family => 'inet' }], autostart => 1, bridge_ports => 'eth0'); | |
9 | ||
10 | expect load('base') . <<"EOF"; | |
11 | auto vmbr0 | |
12 | iface vmbr0 inet manual | |
1accc6da AD |
13 | bridge-ports eth0 |
14 | bridge-stp off | |
15 | bridge-fd 0 | |
936218b8 WB |
16 | |
17 | EOF | |
18 | ||
19 | # add an ip and disable previously enabled autostart | |
20 | update_iface('vmbr0', | |
21 | [ { family => 'inet', | |
22 | address => $ip, | |
936218b8 WB |
23 | gateway => $gw } ], |
24 | autostart => 0); | |
25 | ||
26 | expect load('base') . <<"EOF"; | |
27 | iface vmbr0 inet static | |
beedabb4 AD |
28 | address $ip |
29 | gateway $gw | |
1accc6da AD |
30 | bridge-ports eth0 |
31 | bridge-stp off | |
32 | bridge-fd 0 | |
936218b8 WB |
33 | |
34 | EOF | |
35 | save('with-ipv4', w()); | |
36 | ||
37 | update_iface('vmbr0', | |
38 | [ { family => 'inet6', | |
39 | address => $ip6, | |
936218b8 WB |
40 | gateway => $gw6 } ]); |
41 | ||
42 | expect load('with-ipv4') . <<"EOF"; | |
43 | iface vmbr0 inet6 static | |
beedabb4 AD |
44 | address $ip6 |
45 | gateway $gw6 | |
936218b8 WB |
46 | |
47 | EOF | |
48 | ||
49 | # idempotency | |
50 | save('idem', w()); | |
51 | r(load('idem')); | |
52 | expect load('idem'); | |
53 | ||
54 | # delete vmbr0's inet | |
55 | delete_iface('vmbr0', 'inet'); | |
56 | ||
57 | # bridge ports must now appear in the inet6 block | |
58 | expect load('base') . <<"EOF"; | |
59 | iface vmbr0 inet6 static | |
beedabb4 AD |
60 | address $ip6 |
61 | gateway $gw6 | |
1accc6da AD |
62 | bridge-ports eth0 |
63 | bridge-stp off | |
64 | bridge-fd 0 | |
936218b8 WB |
65 | |
66 | EOF | |
67 | ||
68 | # idempotency | |
69 | save('idem', w()); | |
70 | r(load('idem')); | |
71 | expect load('idem'); | |
72 | ||
73 | # delete vmbr0 completely | |
74 | delete_iface('vmbr0'); | |
75 | expect load('base'); | |
76 | ||
77 | 1; |