# ntp.conf: Managed by puppet.
#
<% if @panic == false -%>
# Keep ntpd from panicking in the event of a large clock skew
# when a VM guest is suspended and resumed.
tinker panic 0
<% end -%>

<% if @restrict != [] -%>
# Permit time synchronization with our time source, but do not'
# permit the source to query or modify the service on this system.'
<% @restrict.flatten.each do |restrict| -%>
restrict <%= restrict %>
<% end %>
<% end -%>

<% [@servers].flatten.each do |server| -%>
server <%= server %><% if @preferred_servers.include?(server) -%> prefer<% end %>
<% end -%>

<% if scope.lookupvar('::is_virtual') == "false" or @udlc -%>
# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available. 
server	127.127.1.0 
fudge	127.127.1.0 stratum 10
restrict 127.127.1.0
<% end -%>

# Driftfile.
driftfile <%= @driftfile %>

<% if @keys_enable -%>
keys <%= @keys_file %>
<% unless @keys_trusted.empty? -%>
trustedkey <%= @keys_trusted.join(' ') %>
<% end -%>
<% if @keys_requestkey != '' -%>
requestkey <%= @keys_requestkey %>
<% end -%>
<% if @keys_controlkey != '' -%>
controlkey <%= @keys_controlkey %>
<% end -%>
<% end -%>
