Deconsolidate network setup for proxmox and debian roles

They are just different enough to be annoying.
This commit is contained in:
Timotej Lazar 2024-08-28 12:37:41 +02:00
parent c3d1a6c4b1
commit 211d4bdb9a
10 changed files with 104 additions and 19 deletions

View file

@ -0,0 +1,3 @@
{% for iface in hostvars[inventory_hostname].interfaces | selectattr('mac_address') %}
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="{{ iface.mac_address|lower }}", NAME="{{ iface.name }}"
{% endfor %}

31
templates/ansible.intf.j2 Normal file
View file

@ -0,0 +1,31 @@
{% for vrf in interfaces | selectattr('vrf') | map(attribute='vrf.name') | sort | unique %}
auto {{ vrf }}
iface {{ vrf }}
vrf-table auto
address 127.0.0.1/8
address ::1/128
{%+ endfor %}
{%- for iface in interfaces | selectattr('enabled') %}
{% if iface.mgmt_only is not defined or not iface.mgmt_only %}
auto {{ iface.name }}
iface {{ iface.name }}{% if iface.name == 'lo' %} inet loopback{% endif +%}
{% if iface.mtu %}
mtu {{ iface.mtu }}
{% endif %}
{% if iface.vrf %}
vrf {{ iface.vrf.name }}
{% endif %}
{% for ip in iface.ip_addresses %}
address {{ ip.address }}
{% set subnet = ip.address | ipaddr('subnet') %}
{% set prefix = prefixes | selectattr('prefix', '==', subnet) | first %}
{% set gateway = prefix.custom_fields.gateway.address %}
{% if gateway is defined %}
gateway {{ gateway | ipaddr('address') }}
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}

4
templates/resolv.conf.j2 Normal file
View file

@ -0,0 +1,4 @@
search {{ domain }}
{% for server in dns %}
nameserver {{ server }}
{% endfor %}