14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# File 'manifests/init.pp', line 14
class netplan (
Boolean $noop = true,
String $package_name = 'netplan',
String $package_ensure = 'present',
String $config_file = '/etc/netplan/netplan.yaml',
Boolean $replace = true,
Enum['NetworkManager', 'networkd'] $renderer = 'networkd',
Integer $config_version = 2,
Hash $config_hash = {
'network' => {
'version' => $config_version,
'renderer' => $renderer
}
}
) {
$warning_message = @("EOL")
The module ${name} has been started in NOOP mode.
A configuration file will be added. To try the configuration run
`netplan try --config-file ${config_file}`
After verification, set the flag
`netplan::noop: false`
| EOL
include netplan::install
concat { $config_file:
ensure => present,
replace => $replace,
format => 'yaml'
}
concat::fragment { '[netplan] HEAD':
target => $config_file,
content => to_yaml($config_hash)
}
unless $noop {
Exec <| tag == 'netplan_flush' |>
-> exec { 'Run netplan apply':
command => '/usr/sbin/netplan apply',
refreshonly => true,
subscribe => Concat[$config_file]
}
} else { warning($warning_message) }
}
|