66 lines
1.5 KiB
YAML
66 lines
1.5 KiB
YAML
|
---
|
||
|
- name: Ensure NTP package
|
||
|
package:
|
||
|
name:
|
||
|
- "{{ ntp_package }}"
|
||
|
state: present
|
||
|
|
||
|
- name: Disable systemd-timesyncd
|
||
|
service:
|
||
|
name: systemd-timesyncd.service
|
||
|
enabled: false
|
||
|
state: stopped
|
||
|
failed_when: false
|
||
|
|
||
|
- name: Set fact NTP settings
|
||
|
set_fact:
|
||
|
ntp_config_file: >-
|
||
|
{% if ntp_package == "ntp" -%}
|
||
|
/etc/ntp.conf
|
||
|
{%- elif ansible_os_family in ['RedHat', 'Suse'] -%}
|
||
|
/etc/chrony.conf
|
||
|
{%- else -%}
|
||
|
/etc/chrony/chrony.conf
|
||
|
{%- endif -%}
|
||
|
ntp_service_name: >-
|
||
|
{% if ntp_package == "chrony" -%}
|
||
|
chronyd
|
||
|
{%- elif ansible_os_family == 'RedHat' -%}
|
||
|
ntpd
|
||
|
{%- else -%}
|
||
|
ntp
|
||
|
{%- endif %}
|
||
|
|
||
|
- name: Generate NTP configuration file.
|
||
|
template:
|
||
|
src: "{{ ntp_config_file | basename }}.j2"
|
||
|
dest: "{{ ntp_config_file }}"
|
||
|
mode: 0644
|
||
|
notify: Preinstall | restart ntp
|
||
|
when:
|
||
|
- ntp_manage_config
|
||
|
|
||
|
- name: Stop the NTP Deamon For Sync Immediately # `ntpd -gq`,`chronyd -q` requires the ntp daemon stop
|
||
|
service:
|
||
|
name: "{{ ntp_service_name }}"
|
||
|
state: stopped
|
||
|
when:
|
||
|
- ntp_force_sync_immediately
|
||
|
|
||
|
- name: Force Sync NTP Immediately
|
||
|
command: >-
|
||
|
timeout -k 60s 60s
|
||
|
{% if ntp_package == "ntp" -%}
|
||
|
ntpd -gq
|
||
|
{%- else -%}
|
||
|
chronyd -q
|
||
|
{%- endif -%}
|
||
|
when:
|
||
|
- ntp_force_sync_immediately
|
||
|
|
||
|
- name: Ensure NTP service is started and enabled
|
||
|
service:
|
||
|
name: "{{ ntp_service_name }}"
|
||
|
state: started
|
||
|
enabled: true
|