40 lines
913 B
Puppet
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',
|
|
}
|
|
}
|
|
}
|