|
1 | 1 | # {{ ansible_managed }}
|
2 |
| -{% if item.auto | default(true, true) -%} |
| 2 | + |
| 3 | +{% if item.auto | default(true) %} |
3 | 4 | auto {{ item.device }}
|
4 |
| -{% endif -%} |
| 5 | +{% endif %} |
5 | 6 | iface {{ item.device }} {{ item.family | default('inet', true) }} {{ item.method | default('dhcp', true) }}
|
6 |
| -{% for key in ['address', 'network', 'netmask', 'broadcast', 'gateway'] -%} |
7 |
| -{% if key in item -%} |
| 7 | +{% for key in ['address', 'network', 'netmask', 'broadcast', 'gateway'] %} |
| 8 | +{% if key in item %} |
8 | 9 | {{ key }} {{ item[key] }}
|
9 |
| -{% endif -%} |
10 |
| -{% endfor -%} |
| 10 | +{% endif %} |
| 11 | +{% endfor %} |
| 12 | + |
| 13 | +{%- if item.nameservers is defined %} |
11 | 14 |
|
12 |
| -{% if item.nameservers is defined -%} |
13 | 15 | dns-nameservers {{ item.nameservers | join(' ') }}
|
14 |
| -{% endif -%} |
| 16 | +{% endif %} |
| 17 | + |
| 18 | +{%- if item.bridge is defined -%} |
15 | 19 |
|
16 |
| -{% if item.bridge is defined -%} |
17 |
| -{% for key in ['ports', 'stp', 'fd', 'maxwait'] -%} |
| 20 | + # bridge settings |
| 21 | +{% for key in ['ports', 'stp', 'fd', 'maxwait'] %} |
18 | 22 | {% if key in item.bridge -%}
|
19 | 23 | bridge_{{ key }} {{ item.bridge[key] }}
|
20 |
| -{% endif -%} |
21 |
| -{% endfor -%} |
22 |
| -{% endif -%} |
| 24 | +{% endif %} |
| 25 | +{% endfor %} |
| 26 | +{% endif %} |
23 | 27 |
|
24 |
| -{% if item.subnets is defined -%} |
25 |
| -{% for subnet in item.subnets -%} |
| 28 | +{%- if item.subnets is defined %} |
| 29 | + |
| 30 | + # additional subnets |
| 31 | +{% for subnet in item.subnets %} |
26 | 32 | up /sbin/ip addr add {{ subnet }} dev {{ item.device }}
|
27 | 33 | down /sbin/ip addr del {{ subnet }} dev {{ item.device }}
|
28 |
| -{% endfor -%} |
29 |
| -{% endif -%} |
| 34 | +{% endfor %} |
| 35 | +{% endif %} |
| 36 | + |
| 37 | +{%- if ['pre-up', 'up', 'down', 'post-down'] | intersect(item.keys()) %} |
30 | 38 |
|
31 |
| -{% for key in ['pre-up', 'up', 'down', 'post-down'] -%} |
32 |
| -{% if key in item -%} |
33 |
| -{% for value in item[key] -%} |
| 39 | + # hook scripts |
| 40 | +{% for key in ['pre-up', 'up', 'down', 'post-down'] %} |
| 41 | +{% if key in item %} |
| 42 | +{% for value in item[key] %} |
34 | 43 | {{ key }} {{ value }}
|
35 |
| -{% endfor -%} |
36 |
| -{% endif -%} |
37 |
| -{% endfor -%} |
| 44 | +{% endfor %} |
| 45 | +{% endif %} |
| 46 | +{% endfor %} |
| 47 | +{% endif %} |
0 commit comments