Skip to content

Commit

Permalink
Merge pull request #366 from jbondpdx/add-strings
Browse files Browse the repository at this point in the history
(MODULES-4225) add strings to ntp module
  • Loading branch information
HAIL9000 authored Jan 11, 2017
2 parents cafbfa0 + 8925b07 commit 4ab7081
Show file tree
Hide file tree
Showing 5 changed files with 78 additions and 14 deletions.
26 changes: 15 additions & 11 deletions README.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -128,17 +128,25 @@ class { '::ntp':

The following parameters are available in the `::ntp` class:

#### `authprov`

Optional. String. Enables compatibility with W32Time in some versions of NTPd (such as Novell DSfW). Default value: undef.

#### `broadcastclient`

Boolean. Enables reception of broadcast server messages to any local interface.

#### `config`

Stdlib::Absolutepath. Specifies a file for NTP's configuration info. Default value: '/etc/ntp.conf' (or '/etc/inet/ntp.conf' on Solaris)
Stdlib::Absolutepath. Specifies a file for NTP's configuration info. Default value: '/etc/ntp.conf' (or '/etc/inet/ntp.conf' on Solaris).

#### `config_dir`

Optional. Stdlib::Absolutepath. Specifies a directory for the NTP configuration files. Default value: undef
Optional. Stdlib::Absolutepath. Specifies a directory for the NTP configuration files. Default value: undef.

#### `config_epp`

Optional. String. Specifies an absolute or relative file path to an EPP template for the config file. Example value: 'ntp/ntp.conf.epp'. A validation error is thrown if both this **and** the `config_template` parameter are specified.

####`config_file_mode`

Expand All @@ -148,10 +156,6 @@ String. Specifies a file mode for the ntp configuration file. Default value: '06

Optional. String. Specifies an absolute or relative file path to an ERB template for the config file. Example value: 'ntp/ntp.conf.erb'. A validation error is thrown if both this **and** the `config_epp` parameter are specified.

#### `config_epp`

Optional. String. Specifies an absolute or relative file path to an EPP template for the config file. Example value: 'ntp/ntp.conf.epp'. A validation error is thrown if both this **and** the `config_template` parameter are specified.

#### `disable_auth`

Boolean. Disables cryptographic authentication for broadcast client, multicast
Expand Down Expand Up @@ -183,19 +187,19 @@ Boolean. Specifies whether to enable the iburst option for every NTP peer. Defau

#### `interfaces`

Array[String]. Specifies one or more network interfaces for NTP to listen on. Default value: [ ]
Array[String]. Specifies one or more network interfaces for NTP to listen on. Default value: [ ].

#### `interfaces_ignore`

Array[String]. Specifies one or more ignore pattern for the NTP listener configuration (for example: all, wildcard, ipv6). Default value: [ ].

#### `keys`

Array[String]. Distributes keys to keys file. Default value: [ ]
Array[String]. Distributes keys to keys file. Default value: [ ].

#### `keys_controlkey`

Optional. Ntp::Key_id. Specifies the key identifier to use with the ntpq utility. Value in the range of 1 to 65,534 inclusive. Default value: ' '
Optional. Ntp::Key_id. Specifies the key identifier to use with the ntpq utility. Value in the range of 1 to 65,534 inclusive. Default value: ' '.

#### `keys_enable`

Expand All @@ -207,7 +211,7 @@ Stdlib::Absolutepath. Specifies the complete path and location of the MD5 key fi

#### `keys_requestkey`

Optional. Ntp::Key_id. Specifies the key identifier to use with the ntpdc utility program. Value in the range of 1 to 65,534 inclusive. Default value: ' '
Optional. Ntp::Key_id. Specifies the key identifier to use with the ntpdc utility program. Value in the range of 1 to 65,534 inclusive. Default value: ' '.

#### `keys_trusted`:
Optional. Array[Ntp::Key_id]. Provides one or more keys to be trusted by NTP. Default value: [ ].
Expand Down Expand Up @@ -281,7 +285,7 @@ Default value for AIX systems:

#### `servers`

Array[String]. Specifies one or more servers to be used as NTP peers. Default value: varies by operating system
Array[String]. Specifies one or more servers to be used as NTP peers. Default value: varies by operating system.

#### `service_enable`

Expand Down
3 changes: 2 additions & 1 deletion manifests/config.pp
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Private Class
# @api private
# This class handles the configuration file. Avoid modifying private classes.
class ntp::config inherits ntp {

#The servers-netconfig file overrides NTP config on SLES 12, interfering with our configuration.
Expand Down
57 changes: 57 additions & 0 deletions manifests/init.pp
Original file line number Diff line number Diff line change
@@ -1,3 +1,60 @@
# ntp
#
# Main class, includes all other classes.
#
# @param authprov [Optional[String]] Enables compatibility with W32Time in some versions of NTPd (such as Novell DSfW). Default value: undef.
# @param broadcastclient [Boolean] Enables reception of broadcast server messages to any local interface.
# @param config [Stdlib] Specifies a file for NTP's configuration info. Default value: '/etc/ntp.conf' (or '/etc/inet/ntp.conf' on Solaris).
# @param config_dir [Stdlib] Stdlib::Absolutepath. Specifies a directory for the NTP configuration files. Default value: undef.
# @param config_epp [String] Specifies an absolute or relative file path to an EPP template for the config file. Example value: 'ntp/ntp.conf.epp'. A validation error is thrown if both this **and** the `config_template` parameter are specified.
# @param config_file_mode [String] Specifies a file mode for the ntp configuration file. Default value: '0664'.
# @param config_template [String] Specifies an absolute or relative file path to an ERB template for the config file. Example value: 'ntp/ntp.conf.erb'. A validation error is thrown if both this **and** the `config_epp` parameter are specified.
# @param disable_auth [Boolean] Disables cryptographic authentication for broadcast client, multicast client, and symmetric passive associations.
# @param disable_dhclient [Boolean] Disables `ntp-servers` in `dhclient.conf` to prevent Dhclient from managing the NTP configuration.
# @param disable_kernel [Boolean] Disables kernel time discipline.
# @param disable_monitor [Boolean] Disables the monitoring facility in NTP. Default value: true.
# @param driftfile [Stdlib::Absolutepath] Specifies an NTP driftfile. Default value: '/var/lib/ntp/drift' (except on AIX and Solaris).
# @param fudge [Optional. Array[String]]. Provides additional information for individual clock drivers. Default value: [ ]
# @param iburst_enable [Boolean] Specifies whether to enable the iburst option for every NTP peer. Default value: false (true on AIX and Debian).
# @param interfaces [Array[String]]. Specifies one or more network interfaces for NTP to listen on. Default value: [ ].
# @param interfaces_ignore [Array[String]] Specifies one or more ignore pattern for the NTP listener configuration (for example: all, wildcard, ipv6). Default value: [ ].
# @param keys [Array[String]] Distributes keys to keys file. Default value: [ ].
# @param keys_controlkey [Optional. Ntp::Key_id] Specifies the key identifier to use with the ntpq utility. Value in the range of 1 to 65,534 inclusive. Default value: ' '.
# @param keys_enable [Boolean] Whether to enable key-based authentication. Default value: false.
# @param keys_file [Stdlib::Absolutepath] Specifies the complete path and location of the MD5 key file containing the keys and key identifiers used by ntpd, ntpq and ntpdc when operating with symmetric key cryptography. Default value: `/etc/ntp.keys` (on RedHat and Amazon, `/etc/ntp/keys`).
# @param keys_requestkey [Optional Ntp::Key_id] Specifies the key identifier to use with the ntpdc utility program. Value in the range of 1 to 65,534. Default value: ' '.
# @param keys_trusted [Optional. Array[Ntp::Key_id]] Provides one or more keys to be trusted by NTP. Default value: [ ].
# @param leapfile [Optional Stdlib::Absolutepath] Specifies a leap second file for NTP to use. Default value: ' '.
# @param logfile [Optional Stdlib::Absolutepath] Specifies a log file for NTP to use instead of syslog. Default value: ' '.
# @param minpoll [Optional Ntp::Poll_interval] Sets Puppet to non-standard minimal poll interval of upstream servers. Values: 3 to 16. Default: undef.
# @param maxpoll [Optional Ntp::Poll_interval] Sets use non-standard maximal poll interval of upstream servers. Values: 3 to 16. Default option: undef, except on FreeBSD (on FreeBSD, defaults to 9).
# @param ntpsigndsocket [Optional Stdlib::Absolutepath] Sets NTP to sign packets using the socket in the ntpsigndsocket path. Requires NTP to be configured to sign sockets. Value: Path to the socket directory; for example, for Samba: `usr/local/samba/var/lib/ntp_signd/`. Default value: undef.
# @param package_ensure [String] Whether to install the NTP package, and what version to install. Values: 'present', 'latest', or a specific version number. Default value: 'present'.
# @param package_manage [Boolean] Whether to manage the NTP package. Default value: true.
# @param package_name [Array[String]] Specifies the NTP package to manage. Default value: ['ntp'] (except on AIX and Solaris).
# @param panic [Optional Integer[0]] Whether NTP should "panic" in the event of a very large clock skew. Applies only if `tinker` option set to true or if your environment is in a virtual machine. Default value: 0 if environment is virtual, undef in all other cases.
# @param peers [Array[String]] List of NTP servers with which to synchronise the local clock.
# @param preferred_servers [Array[String] Specifies one or more preferred peers. Puppet appends 'prefer' to each matching item in the `servers` array. Default value: [ ].
# @param restrict [Array[String]] Specifies one or more `restrict` options for the NTP configuration. Puppet prefixes each item with 'restrict', so you need to list only the content of the restriction. Default value for most operating systems: '[default kod nomodify notrap nopeer noquery', '-6 default kod nomodify notrap nopeer noquery', '127.0.0.1', '-6 ::1']`. Default value for AIX systems: `['default nomodify notrap nopeer noquery', '127.0.0.1',]`.
# @param servers [Array[String]] Specifies one or more servers to be used as NTP peers. Default value: varies by operating system.
# @param service_enable [Boolean] Whether to enable the NTP service at boot. Default value: true.
# @param service_ensure [String] Whether the NTP service should be running. Values: 'running' or 'stopped'. Default value: 'running'.
# @param service_manage [Boolean] Whether to manage the NTP service. Default value: true.
# @param service_name [String] The NTP service to manage. Default value: varies by operating system.
# @param service_provider [String] Which service provider to use for NTP. Default value: 'undef'.
# @param step_tickers_file [Optional Stdlib::Absolutepath] Location of the step tickers file on the managed system. Default value: varies by operating system.
# @param step_tickers_epp [Optional String] Location of the step tickers EPP template file. Default value: varies by operating system. Validation error is thrown if both this and the `step_tickers_template` parameters are specified.
# @param step_tickers_template [Optional String] Location of the step tickers ERB template file. Default value: varies by operating system. Validation error is thrown if both this and the `step_tickers_epp` parameter are specified.
# @param stepout [Optional Integer[0, 65535]]. Value for stepout if `tinker` value is true. Valid options: unsigned shortint digit. Default value: undef.
# @param tos [Boolean] Whether to enable tos options. Default value: false.
# @param tos_minclock [Optional Integer[1]] Specifies the minclock tos option. Default value: 3.
# @param tos_minsane [Optional Integer[1]] Specifies the minsane tos option. Default value: 1.
# @param tos_floor [Optional Integer[1]] Specifies the floor tos option. Default value: 1.
# @param tos_ceiling [Optional Integer[1]] Specifies the ceiling tos option. Default value: 15.
# @param tos_cohort [Variant Boolean, Integer[0,1]] Specifies the cohort tos option. Valid options: 0 or 1. Default value: 0.
# @param tinker [Boolean] Whether to enable tinker options. Default value: false.
# @param udlc [Boolean] Specifies whether to configure NTP to use the undisciplined local clock as a time source. Default value: false.
# @param udlc_stratum [Optional Integer[1,15]]. Specifies the stratum the server should operate at when using the undisciplined local clock as the time source. This value should be set to no less than 10 if ntpd might be accessible outside your immediate, controlled network. Default value: 10.am udlc [Boolean] Specifies whether to configure NTP to use the undisciplined local clock as a time source. Default value: false.
class ntp (
Boolean $broadcastclient,
Stdlib::Absolutepath $config,
Expand Down
3 changes: 2 additions & 1 deletion manifests/install.pp
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#
# @api private
# This class handles ntp packages. Avoid modifying private classes.
class ntp::install inherits ntp {

if $ntp::package_manage {
Expand Down
3 changes: 2 additions & 1 deletion manifests/service.pp
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#
# @api private
# This class handles the ntp service. Avoid modifying private classes.
class ntp::service inherits ntp {

if ! ($ntp::service_ensure in [ 'running', 'stopped' ]) {
Expand Down

0 comments on commit 4ab7081

Please sign in to comment.