bundlewrap/bundles/pppd/metadata.py

63 lines
1.5 KiB
Python

defaults = {
'apt': {
'packages': {
'ppp': {},
'pppoe': {},
'python3-requests': {},
'python3-netifaces': {},
'ndisc6': {},
},
},
'cron': {
'jobs': {
'restart-pppoe-if-no-public-ip': '*/5 * * * * root /usr/local/bin/restart-pppoe-if-no-public-ip',
},
},
'icinga2_api': {
'pppd': {
'services': {
'PPPD PROCESS': {
'command_on_monitored_host': '/usr/lib/nagios/plugins/check_procs -C pppd -c 1:',
},
'PPPOE PROCESS': {
'command_on_monitored_host': '/usr/lib/nagios/plugins/check_procs -C pppoe -c 1:',
},
},
},
},
}
@metadata_reactor.provides(
'interfaces',
)
def ignore_interface(metadata):
return {
'interfaces': {
metadata.get('pppd/interface'): {
'ignore': True,
},
},
}
@metadata_reactor.provides(
'icinga2_api/pppd/services',
)
def icinga_dyndns(metadata):
if not metadata.get('pppd/dyndns', {}):
return {}
return {
'icinga2_api': {
'pppd': {
'services': {
'DYNDNS UPDATE': {
'command_on_monitored_host': '/usr/local/share/icinga/plugins/check_dyndns_update',
'vars.notification.mail': True,
},
},
},
},
}