diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/config.pp | 33 | ||||
-rw-r--r-- | manifests/init.pp | 49 | ||||
-rw-r--r-- | manifests/install.pp | 9 | ||||
-rw-r--r-- | manifests/params.pp | 42 | ||||
-rw-r--r-- | manifests/service.pp | 13 |
5 files changed, 102 insertions, 44 deletions
diff --git a/manifests/config.pp b/manifests/config.pp index 0a4a710..c8a5625 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -1,10 +1,29 @@ -class ntp::config ( - $config = $ntp::config, - $config_template = $ntp::config_template, - $panic = $ntp::panic, - $restrict = $ntp::restrict, - $servers = $ntp::servers, -) inherits ntp { +# +class ntp::config { + + $config = $ntp::config + $config_template = $ntp::config_template + $driftfile = $ntp::driftfile + $keys_enable = $ntp::keys_enable + $keys_file = $ntp::keys_file + $keys_controlkey = $ntp::keys_controlkey + $keys_requestkey = $ntp::keys_requestkey + $keys_trusted = $ntp::keys_trusted + $panic = $ntp::panic + $preferred_servers = $ntp::preferred_servers + $restrict = $ntp::restrict + $servers = $ntp::servers + + if $keys_enable { + $directory = dirname($keys_file) + file { $directory: + ensure => directory, + owner => 0, + group => 0, + mode => '0755', + recurse => true, + } + } file { $config: ensure => file, diff --git a/manifests/init.pp b/manifests/init.pp index 61a5ad9..2c8b9e4 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -1,18 +1,43 @@ class ntp ( - $autoupdate = $ntp::params::autoupdate, - $config = $ntp::params::config, - $config_template = $ntp::params::config_template, - $package_ensure = $ntp::params::package_ensure, - $package_name = $ntp::params::package_name, - $panic = $ntp::params::panic, - $restrict = $ntp::params::restrict, - $servers = $ntp::params::servers, - $service_enable = $ntp::params::service_enable, - $service_ensure = $ntp::params::service_ensure, - $service_manage = $ntp::params::service_manage, - $service_name = $ntp::params::service_name, + $autoupdate = $ntp::params::autoupdate, + $config = $ntp::params::config, + $config_template = $ntp::params::config_template, + $driftfile = $ntp::params::driftfile, + $keys_enable = $ntp::params::keys_enable, + $keys_file = $ntp::params::keys_file, + $keys_controlkey = $ntp::params::keys_controlkey, + $keys_requestkey = $ntp::params::keys_requestkey, + $keys_trusted = $ntp::params::keys_trusted, + $package_ensure = $ntp::params::package_ensure, + $package_name = $ntp::params::package_name, + $panic = $ntp::params::panic, + $preferred_servers = $ntp::params::preferred_servers, + $restrict = $ntp::params::restrict, + $servers = $ntp::params::servers, + $service_enable = $ntp::params::service_enable, + $service_ensure = $ntp::params::service_ensure, + $service_manage = $ntp::params::service_manage, + $service_name = $ntp::params::service_name, ) inherits ntp::params { + validate_absolute_path($config) + validate_string($config_template) + validate_absolute_path($driftfile) + validate_bool($keys_enable) + validate_re($keys_controlkey, ['^\d+$', '']) + validate_re($keys_requestkey, ['^\d+$', '']) + validate_array($keys_trusted) + validate_string($package_ensure) + validate_array($package_name) + validate_bool($panic) + validate_array($preferred_servers) + validate_bool($restrict) + validate_array($servers) + validate_bool($service_enable) + validate_string($service_ensure) + validate_bool($service_manage) + validate_string($service_name) + if $autoupdate { notice('autoupdate parameter has been deprecated and replaced with package_ensure. Set this to latest for the same behavior as autoupdate => true.') } diff --git a/manifests/install.pp b/manifests/install.pp index 94cb080..e175964 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -1,7 +1,8 @@ -class ntp::install ( - $package_ensure = $ntp::package_ensure, - $package_name = $ntp::package_name, -) inherits ntp { +# +class ntp::install { + + $package_ensure = $ntp::package_ensure + $package_name = $ntp::package_name package { 'ntp': ensure => $package_ensure, diff --git a/manifests/params.pp b/manifests/params.pp index 45551a8..ef037fc 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -1,22 +1,29 @@ class ntp::params { - $autoupdate = false - $package_ensure = 'present' - $restrict = true - $service_enable = true - $service_ensure = 'running' - $service_manage = true + $autoupdate = false + $config_template = 'ntp/ntp.conf.erb' + $keys_enable = false + $keys_controlkey = '' + $keys_requestkey = '' + $keys_trusted = [] + $package_ensure = 'present' + $preferred_servers = [] + $restrict = true + $service_enable = true + $service_ensure = 'running' + $service_manage = true # On virtual machines allow large clock skews. - $panic = $::is_virtual ? { - 'true' => false, + $panic = str2bool($::is_virtual) ? { + true => false, default => true, } case $::osfamily { 'Debian': { $config = '/etc/ntp.conf' - $config_template = 'ntp/ntp.conf.debian.erb' + $keysfile = '/etc/ntp/keys' + $driftfile = '/var/lib/ntp/drift' $package_name = [ 'ntp' ] $service_name = 'ntp' $servers = [ @@ -28,7 +35,8 @@ class ntp::params { } 'RedHat': { $config = '/etc/ntp.conf' - $config_template = 'ntp/ntp.conf.el.erb' + $driftfile = '/var/lib/ntp/drift' + $keysfile = '/etc/ntp/keys' $package_name = [ 'ntp' ] $service_name = 'ntpd' $servers = [ @@ -39,7 +47,8 @@ class ntp::params { } 'SuSE': { $config = '/etc/ntp.conf' - $config_template = 'ntp/ntp.conf.suse.erb' + $driftfile = '/var/lib/ntp/drift/ntp.drift' + $keysfile = '/etc/ntp/keys' $package_name = [ 'ntp' ] $service_name = 'ntp' $servers = [ @@ -51,7 +60,8 @@ class ntp::params { } 'FreeBSD': { $config = '/etc/ntp.conf' - $config_template = 'ntp/ntp.conf.freebsd.erb' + $driftfile = '/var/db/ntpd.drift' + $keysfile = '/etc/ntp/keys' $package_name = ['net/ntp'] $service_name = 'ntpd' $servers = [ @@ -63,8 +73,9 @@ class ntp::params { } 'Archlinux': { $config = '/etc/ntp.conf' - $config_template = 'ntp/ntp.conf.archlinux.erb' - $package_name = ['ntp'] + $driftfile = '/var/lib/ntp/drift' + $keysfile = '/etc/ntp/keys' + $package_name = [ 'ntp' ] $service_name = 'ntpd' $servers = [ '0.pool.ntp.org', @@ -77,7 +88,8 @@ class ntp::params { case $::operatingsystem { 'Gentoo': { $config = '/etc/ntp.conf' - $config_template = 'ntp/ntp.conf.gentoo.erb' + $driftfile = '/var/lib/ntp/drift' + $keysfile = '/etc/ntp/keys' $package_name = ['net-misc/ntp'] $service_name = 'ntpd' $servers = [ diff --git a/manifests/service.pp b/manifests/service.pp index 741e65b..2b1eee0 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -1,9 +1,10 @@ -class ntp::service ( - $service_enable = $ntp::service_enable, - $service_ensure = $ntp::service_ensure, - $service_manage = $ntp::service_manage, - $service_name = $ntp::service_name, -) inherits ntp { +# +class ntp::service { + + $service_enable = $ntp::service_enable + $service_ensure = $ntp::service_ensure + $service_manage = $ntp::service_manage + $service_name = $ntp::service_name if ! ($service_ensure in [ 'running', 'stopped' ]) { fail('service_ensure parameter must be running or stopped') |