--- - name: set timezone in /etc/localtime become: true ansible.builtin.file: src: /usr/share/zoneinfo/{{ timesyncd_setup_timezone }} dest: /etc/localtime state: link force: true notify: - reconfigure_timezone - reload_ntp - name: set timezone in /etc/timezone become: true ansible.builtin.lineinfile: state: present dest: /etc/timezone regexp: '.*' line: '{{ timesyncd_setup_timezone }}' insertbefore: EOF create: true mode: '0644' notify: - reconfigure_timezone - reload_ntp - name: set timezone via systemd become: true ansible.builtin.command: timedatectl set-timezone {{ timesyncd_setup_timezone }} - name: set ntp config in /etc/systemd/timesyncd.conf become: true community.general.ini_file: path: /etc/systemd/timesyncd.conf section: Time option: NTP value: '{{ timesyncd_setup_ntp_servers | join(" ") }}' backup: true notify: - reload_ntp - restart_timesyncd - sync_rtc - name: enable systemd-timesyncd unit become: true service: name: systemd-timesyncd enabled: true notify: - reload_ntp - restart_timesyncd - sync_rtc - name: flush handlers ansible.builtin.meta: flush_handlers # - name: wait for timesyncd to synchronize # ansible.builtin.command: systemctl status systemd-timesyncd # retries: 60 # delay: 3 # register: task_result # until: # - task_result.rc == 0 # - task_result.stdout is search('[Ss]ynchroniz.* to time server')