OP#830 add bollean for toggling using lan server

This commit is contained in:
2026-10-02 16:03:13 +02:00
parent 281ce8ac26
commit 28879cbf65
3 changed files with 25 additions and 17 deletions

View File

@@ -32,7 +32,7 @@ Time management in Linux is important. The underlying protocol is ntp, the servi
This module differentiates between client- and server configuration. If the `FQDN` of the puppet client matches the value of `cy_server_fqdn`, it assumes this to be an ntp time server, else it will be a client.
If you have no local time server(s), leave the default for `cy_server_fqdn`.
If you have no local time server(s), leave `cy_use_lan_server` at `false` (default), else set it to `true`. This affects only client configurations.
The value for `cy_server_fqdn` is a string rather array, assuming either a single time server or a round-robin DNS entry for this, returning several values for the time server (not configured by this module).

View File

@@ -17,37 +17,39 @@
# @param [String] cy_leapsectz Leap second timezone file to use.
# @param [String] cy_loginfo Log information to record. Valid values are
# 'measurements', 'statistics', and 'tracking'.
# @param [Boolean] cy_use_lan_server Whether to use a local LAN server or external pool.
###############################################################################
class confdroid_ntp::params (
# installation
Array $cy_reqpackages = ['chrony'],
String $cy_pkg_ensure = 'present',
Array $cy_reqpackages = ['chrony'],
String $cy_pkg_ensure = 'present',
# configuration
String $cy_server_fqdn = 'ntp.example.local',
Array $cy_conf_servers = ['0.pool.ntp.org', '1.pool.ntp.org', '2.pool.ntp.org', '3.pool.ntp.org'],
String $cy_min_sources = '3',
String $cy_client_allow = '192.168.1.0/24',
String $cy_leapsec_mode = 'slew',
String $cy_leapsectz = 'right/UTC',
String $cy_loginfo = 'measurements statistics tracking',
Boolean $cy_use_lan_server = false,
String $cy_server_fqdn = 'ntp.example.local',
Array $cy_conf_servers = ['0.pool.ntp.org', '1.pool.ntp.org', '2.pool.ntp.org', '3.pool.ntp.org'],
String $cy_min_sources = '3',
String $cy_client_allow = '192.168.1.0/24',
String $cy_leapsec_mode = 'slew',
String $cy_leapsectz = 'right/UTC',
String $cy_loginfo = 'measurements statistics tracking',
) {
# facts
$fqdn = $facts['networking']['fqdn']
$domain = $facts['networking']['domain']
$os_name = $facts['os']['name']
$os_release = $facts['os']['release']['major']
$fqdn = $facts['networking']['fqdn']
$domain = $facts['networking']['domain']
$os_name = $facts['os']['name']
$os_release = $facts['os']['release']['major']
# dirs
# files
$cy_conf_file = '/etc/chrony.conf'
$cy_conf_erb = 'confdroid_ntp/chrony.conf.erb'
$cy_conf_file = '/etc/chrony.conf'
$cy_conf_erb = 'confdroid_ntp/chrony.conf.erb'
# service
$cy_service = 'chronyd'
$cy_service = 'chronyd'
# includes must be last
include confdroid_ntp::main::config

View File

@@ -63,7 +63,13 @@ log <%= @cy_loginfo %>
<% if @fqdn != @cy_server_fqdn -%>
# This is a time client configuration file
<% if @cy_use_lan_server -%>
server <%= @cy_server_fqdn %> iburst
<% else -%>
# Use public servers from the pool.ntp.org project.
<% @cy_conf_servers.each do |this_server| -%>
server <%= this_server %> iburst
<% end -%>
# Use NTP servers from DHCP.
sourcedir /run/chrony-dhcp