bundlewrap/bundles/wireguard/items.py
Franziska Kunsmann f8bbe00d47
All checks were successful
bundlewrap/pipeline/head This commit looks good
overall better handling and usage of exceptions
2021-04-02 18:57:13 +02:00

31 lines
827 B
Python

from ipaddress import ip_network
repo.libs.tools.require_bundle(node, 'systemd-networkd')
network = ip_network(node.metadata['wireguard']['my_ip'], strict=False)
files = {
'/etc/systemd/network/wg0.netdev': {
'content_type': 'mako',
'context': {
'network': f'{network.network_address}/{network.prefixlen}',
**node.metadata['wireguard'],
},
'needs': {
'pkg_apt:wireguard',
},
'triggers': {
'svc_systemd:systemd-networkd:restart',
},
},
'/usr/local/share/icinga/plugins/check_wireguard_connected': {
'mode': '0755',
},
}
if node.has_bundle('pppd'):
files['/etc/ppp/ip-up.d/reconnect-wireguard'] = {
'source': 'pppd-ip-up',
'content_type': 'mako',
'mode': '0755',
}