From 77ea2dc7e5894fdaca638812b256ac73e3776f26 Mon Sep 17 00:00:00 2001 From: "lausing@student.ubc.ca" Date: Fri, 20 Feb 2026 11:13:39 -0800 Subject: [PATCH 01/11] create enable ntp block --- src/software/embedded/ansible/tasks/enable_ntp.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 src/software/embedded/ansible/tasks/enable_ntp.yml diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml new file mode 100644 index 0000000000..4120d6da1d --- /dev/null +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -0,0 +1,12 @@ +--- +- name: Make sure NTP is enabled to sync time for set_up.yml + block: + - name: Enable automatic time synchronization + ansible.builtin.command: timedatectl set-ntp on + changed_when: true + + - name: Ensure the systemd-timesyncd service is running and enabled + ansible.builtin.systemd_service: + name: systemd-timesyncd + state: started + enabled: yes \ No newline at end of file From 55a3fb829b8fcacaf5a038202c065dd89f85cf41 Mon Sep 17 00:00:00 2001 From: "lausing@student.ubc.ca" Date: Fri, 20 Feb 2026 11:15:23 -0800 Subject: [PATCH 02/11] add to set_Up pi --- src/software/embedded/ansible/playbooks/setup_pi.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/software/embedded/ansible/playbooks/setup_pi.yml b/src/software/embedded/ansible/playbooks/setup_pi.yml index 82e6af65df..b7f7b25471 100644 --- a/src/software/embedded/ansible/playbooks/setup_pi.yml +++ b/src/software/embedded/ansible/playbooks/setup_pi.yml @@ -11,6 +11,11 @@ ansible.builtin.import_tasks: file: ../tasks/check_internet.yml + - name: Time sync by enabling ntp + tags: configure_pi + ansible.builtin.import_tasks: + file: ../tasks/enable_ntp.yml + - name: Enable passwordless sudo for rsync tags: - dependencies From 9888d406dbe47d45286d58b163c87e2c0eb4878c Mon Sep 17 00:00:00 2001 From: Samuel Date: Sat, 21 Feb 2026 12:55:24 -0800 Subject: [PATCH 03/11] add sudo --- src/software/embedded/ansible/tasks/enable_ntp.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml index 4120d6da1d..bfdb381435 100644 --- a/src/software/embedded/ansible/tasks/enable_ntp.yml +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -2,11 +2,12 @@ - name: Make sure NTP is enabled to sync time for set_up.yml block: - name: Enable automatic time synchronization - ansible.builtin.command: timedatectl set-ntp on + ansible.builtin.command: sudo timedatectl set-ntp on changed_when: true - name: Ensure the systemd-timesyncd service is running and enabled ansible.builtin.systemd_service: name: systemd-timesyncd state: started - enabled: yes \ No newline at end of file + enabled: yes + From b40cbc7d4996e1f0f280cecdc05199744cd0b088 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci-lite[bot]" <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> Date: Sat, 21 Feb 2026 21:10:53 +0000 Subject: [PATCH 04/11] [pre-commit.ci lite] apply automatic fixes --- src/software/embedded/ansible/tasks/enable_ntp.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml index bfdb381435..641f154b1e 100644 --- a/src/software/embedded/ansible/tasks/enable_ntp.yml +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -9,5 +9,4 @@ ansible.builtin.systemd_service: name: systemd-timesyncd state: started - enabled: yes - + enabled: true From 220988f7baaf23543be84cf179b9aa8fd5192ccd Mon Sep 17 00:00:00 2001 From: Samuel <92961466+StarrryNight@users.noreply.github.com> Date: Sat, 21 Feb 2026 13:44:23 -0800 Subject: [PATCH 05/11] Fix capitalization in NTP task name --- src/software/embedded/ansible/playbooks/setup_pi.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/software/embedded/ansible/playbooks/setup_pi.yml b/src/software/embedded/ansible/playbooks/setup_pi.yml index b7f7b25471..2fbd089216 100644 --- a/src/software/embedded/ansible/playbooks/setup_pi.yml +++ b/src/software/embedded/ansible/playbooks/setup_pi.yml @@ -11,7 +11,7 @@ ansible.builtin.import_tasks: file: ../tasks/check_internet.yml - - name: Time sync by enabling ntp + - name: Time sync by enabling NTP tags: configure_pi ansible.builtin.import_tasks: file: ../tasks/enable_ntp.yml From dcec07c1a473c1de87134e5fbfdd9f2a56748f19 Mon Sep 17 00:00:00 2001 From: StarrryNight Date: Mon, 23 Feb 2026 18:57:23 -0800 Subject: [PATCH 06/11] fix bugs, will test in mez later --- src/software/embedded/ansible/tasks/enable_ntp.yml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml index 641f154b1e..1251e5d963 100644 --- a/src/software/embedded/ansible/tasks/enable_ntp.yml +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -1,9 +1,14 @@ --- -- name: Make sure NTP is enabled to sync time for set_up.yml +- name: Make sure NTP is enabled to sync time for setup_pi.yml block: + - name: Check if NTP is enabled + ansible.builtin.command: timedatectl status + register: timedatectl_result + - name: Enable automatic time synchronization - ansible.builtin.command: sudo timedatectl set-ntp on - changed_when: true + ansible.builtin.command: timedatectl set-ntp on + when: "{{'NTP service: active' not in timedatectl_result.stdout}}" + become: true - name: Ensure the systemd-timesyncd service is running and enabled ansible.builtin.systemd_service: From dc610925d34ad81d52218127573a8c4f08bb870a Mon Sep 17 00:00:00 2001 From: StarrryNight Date: Mon, 23 Feb 2026 18:58:17 -0800 Subject: [PATCH 07/11] change tag --- src/software/embedded/ansible/playbooks/setup_pi.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/software/embedded/ansible/playbooks/setup_pi.yml b/src/software/embedded/ansible/playbooks/setup_pi.yml index 2fbd089216..c48f96e732 100644 --- a/src/software/embedded/ansible/playbooks/setup_pi.yml +++ b/src/software/embedded/ansible/playbooks/setup_pi.yml @@ -12,7 +12,7 @@ file: ../tasks/check_internet.yml - name: Time sync by enabling NTP - tags: configure_pi + tags: dependencies ansible.builtin.import_tasks: file: ../tasks/enable_ntp.yml From db6079f8d861d0fe5cd60dfc58aa467af741cb06 Mon Sep 17 00:00:00 2001 From: Thunderbots Date: Tue, 24 Feb 2026 01:38:14 -0800 Subject: [PATCH 08/11] temp commit --- src/software/embedded/ansible/tasks/enable_ntp.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml index 1251e5d963..5435b50a3e 100644 --- a/src/software/embedded/ansible/tasks/enable_ntp.yml +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -2,16 +2,16 @@ - name: Make sure NTP is enabled to sync time for setup_pi.yml block: - name: Check if NTP is enabled - ansible.builtin.command: timedatectl status - register: timedatectl_result + ansible.builtin.command: timedatectl show --property=NTP --value + register: ntp_enabled - - name: Enable automatic time synchronization + - name: Enable automatic time synchronization {{ntp_enabled.stdout}} ansible.builtin.command: timedatectl set-ntp on - when: "{{'NTP service: active' not in timedatectl_result.stdout}}" + when: ntp_enabled.stdout == "no" become: true - name: Ensure the systemd-timesyncd service is running and enabled - ansible.builtin.systemd_service: + ansible.builtin.systemd: name: systemd-timesyncd state: started enabled: true From 60c4f5aa13055c00f7a5d9a3daa077fd7473a123 Mon Sep 17 00:00:00 2001 From: Thunderbots Date: Tue, 24 Feb 2026 02:46:21 -0800 Subject: [PATCH 09/11] add check time block --- src/software/embedded/ansible/tasks/enable_ntp.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml index 5435b50a3e..2d4adf40c2 100644 --- a/src/software/embedded/ansible/tasks/enable_ntp.yml +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -5,10 +5,9 @@ ansible.builtin.command: timedatectl show --property=NTP --value register: ntp_enabled - - name: Enable automatic time synchronization {{ntp_enabled.stdout}} - ansible.builtin.command: timedatectl set-ntp on + - name: Enable automatic time synchronization + ansible.builtin.command: sudo timedatectl set-ntp on when: ntp_enabled.stdout == "no" - become: true - name: Ensure the systemd-timesyncd service is running and enabled ansible.builtin.systemd: From 6de51bec0e6f5fa06c346ef0e9818a0f0e7873a6 Mon Sep 17 00:00:00 2001 From: Samuel <92961466+StarrryNight@users.noreply.github.com> Date: Tue, 24 Feb 2026 11:29:59 -0800 Subject: [PATCH 10/11] Add changed when lines so we don't violate idempotency --- src/software/embedded/ansible/tasks/enable_ntp.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml index 2d4adf40c2..1439fddb1e 100644 --- a/src/software/embedded/ansible/tasks/enable_ntp.yml +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -4,10 +4,12 @@ - name: Check if NTP is enabled ansible.builtin.command: timedatectl show --property=NTP --value register: ntp_enabled + changed_when: false - name: Enable automatic time synchronization ansible.builtin.command: sudo timedatectl set-ntp on when: ntp_enabled.stdout == "no" + changed_when: true - name: Ensure the systemd-timesyncd service is running and enabled ansible.builtin.systemd: From c035f46d0407bbb5ac888577b1552e23872ad5d3 Mon Sep 17 00:00:00 2001 From: Thunderbots Date: Wed, 25 Feb 2026 22:56:30 -0800 Subject: [PATCH 11/11] use become and ansible.builtin.sudo instead of sudo in the command --- src/software/embedded/ansible/tasks/enable_ntp.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/software/embedded/ansible/tasks/enable_ntp.yml b/src/software/embedded/ansible/tasks/enable_ntp.yml index 2d4adf40c2..c48b860081 100644 --- a/src/software/embedded/ansible/tasks/enable_ntp.yml +++ b/src/software/embedded/ansible/tasks/enable_ntp.yml @@ -6,7 +6,9 @@ register: ntp_enabled - name: Enable automatic time synchronization - ansible.builtin.command: sudo timedatectl set-ntp on + ansible.builtin.command: timedatectl set-ntp on + become_method: ansible.builtin.sudo + become: true when: ntp_enabled.stdout == "no" - name: Ensure the systemd-timesyncd service is running and enabled