puppet-prod/modules/networking/manifests/init.pp
Ben Vincent 6839fb8c5f feat: networking defaults
- add interface/route defaults
- merge defaults into each interface/route
2024-06-23 17:34:23 +10:00

40 lines
913 B
Puppet

# unkin networking module
class networking (
Hash $interfaces = {},
Hash $interface_defaults = {},
Hash $routes = {},
Hash $route_defaults = {},
){
include network
include networking::params
$interfaces.each | $interface, $data | {
$merged_data = merge($interface_defaults, $data)
network_config {$interface:
* => $merged_data,
}
}
$routes.each | $route, $data | {
$merged_data = merge($route_defaults, $data)
network_route {$route:
* => $merged_data,
}
}
# prevent DNS from being overwritten by networkmanager
if $networking::params::nwmgr_dns_none {
file {'/etc/NetworkManager/conf.d/dns_none.conf':
ensure => 'file',
owner => 'root',
group => 'root',
mode => '0655',
content => "[main]\ndns=none",
}
}else{
file {'/etc/NetworkManager/conf.d/dns_none.conf':
ensure => 'absent',
}
}
}