feat: restart networking on network changes
- restart network on RedHat - restart networking on debian
This commit is contained in:
parent
8e1622a158
commit
b0934caf23
@ -9,19 +9,37 @@ class networking (
|
|||||||
include network
|
include network
|
||||||
include networking::params
|
include networking::params
|
||||||
|
|
||||||
|
# manage interfaces
|
||||||
$interfaces.each | $interface, $data | {
|
$interfaces.each | $interface, $data | {
|
||||||
$merged_data = merge($interface_defaults, $data)
|
$merged_data = merge($interface_defaults, $data)
|
||||||
network_config { $interface:
|
network_config { $interface:
|
||||||
* => $merged_data,
|
* => $merged_data,
|
||||||
|
notify => Exec['networking_reload_network'],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# manage routes
|
||||||
$routes.each | $route, $data | {
|
$routes.each | $route, $data | {
|
||||||
$merged_data = merge($route_defaults, $data)
|
$merged_data = merge($route_defaults, $data)
|
||||||
network_route { $route:
|
network_route { $route:
|
||||||
* => $merged_data,
|
* => $merged_data,
|
||||||
|
notify => Exec['networking_reload_network'],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# determine which networking service to restart
|
||||||
|
$restart_command = $facts['os']['family'] ? {
|
||||||
|
'RedHat' => '/usr/bin/systemctl restart network',
|
||||||
|
'Debian' => '/usr/bin/systemctl restart networking',
|
||||||
|
default => fail('Unsupported OS in networking-restart-command'),
|
||||||
|
}
|
||||||
|
|
||||||
|
# restart network/networking only if $restart_networking boolean is true
|
||||||
|
exec { 'networking_reload_network':
|
||||||
|
command => $restart_command,
|
||||||
|
refreshonly => true,
|
||||||
|
}
|
||||||
|
|
||||||
# prevent DNS from being overwritten by networkmanager
|
# prevent DNS from being overwritten by networkmanager
|
||||||
if $networking::params::nwmgr_dns_none {
|
if $networking::params::nwmgr_dns_none {
|
||||||
file {'/etc/NetworkManager/conf.d/dns_none.conf':
|
file {'/etc/NetworkManager/conf.d/dns_none.conf':
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user