--- # tasks file for systemd-timesyncd - block: - name: "set timezone" community.general.timezone: name: "{{ timezone }}" - name: "populate service facts" ansible.builtin.service_facts: - name: "install systemd-timesyncd" apt: name: "systemd-timesyncd" autoremove: true update_cache: true - name: "configure systemd-timesyncd" lineinfile: path: /etc/systemd/timesyncd.conf regexp: '{{ cfg.regexp }}' line: '{{ cfg.line }}' loop: - { 'regexp': '^#*NTP=.*$', 'line': 'NTP={{ ntp | default("") | join(" ") }}'} - { 'regexp': '^#*FallbackNTP=.*$', 'line': 'FallbackNTP={{ fallback_ntp | default("") | join(" ") }}'} loop_control: loop_var: cfg - name: "stop and disable chronyd" when: ansible_facts.services['chrony.service'] is defined service: name: chrony.service enabled: no masked: yes state: stopped - name: "start and enable systemd-timesyncd" service: name: systemd-timesyncd.service enabled: yes state: started masked: no notify: systemd-timesyncd configuration changed