summaryrefslogtreecommitdiffstats
path: root/molecule/raspberrypi
diff options
context:
space:
mode:
authorAhmed Abdelhalim <[email protected]>2026-06-22 13:08:22 +0200
committerAhmed Abdelhalim <[email protected]>2026-06-22 13:08:22 +0200
commitc903b87a23cedc56a29d023df50b649c0b9f1e59 (patch)
treec905dfd953f2b7503b5136ec62fb54b4c118b308 /molecule/raspberrypi
parente8888c085bfc51aafeb24a6af20dcd1781d410e1 (diff)
Use more stable approach for testing devices and fix linting issues
This approach uses losetup to query the devices instead of flaky unstable cache!
Diffstat (limited to 'molecule/raspberrypi')
-rw-r--r--molecule/raspberrypi/converge.yml18
-rw-r--r--molecule/raspberrypi/prepare.yml11
2 files changed, 22 insertions, 7 deletions
diff --git a/molecule/raspberrypi/converge.yml b/molecule/raspberrypi/converge.yml
index 8acf53ff..db7b6303 100644
--- a/molecule/raspberrypi/converge.yml
+++ b/molecule/raspberrypi/converge.yml
@@ -1,4 +1,20 @@
---
+- name: "Discover test devices"
+ hosts: localhost
+ gather_facts: false
+ tasks:
+ - name: "Find loop device for vdd.img"
+ become: true
+ ansible.builtin.command:
+ cmd: "losetup -j /opt/vdd.img"
+ register: losetup_output
+ changed_when: false
+
+ - name: "Inject backup_device into raspberrypi host vars"
+ ansible.builtin.add_host:
+ name: "raspberrypi"
+ backup_device: "{{ losetup_output.stdout.split(':')[0] }}"
+
- name: "Bootstrap"
hosts: "raspberrypi"
gather_facts: true
@@ -61,12 +77,10 @@
password_store_repo_url: "https://github.com/octocat/Spoon-Knife"
firefox_install_browserpass: true
firefox_install_passff: true
- backup_device: "{{ test_device }}"
pre_tasks:
- name: "Override is_chroot fact for container environment"
ansible.builtin.set_fact:
ansible_facts: "{{ ansible_facts | combine({'is_chroot': false}) }}"
- test_device: "{{ hostvars['localhost']['test_device'] }}"
roles:
- role: "locales"
- role: "timezone"
diff --git a/molecule/raspberrypi/prepare.yml b/molecule/raspberrypi/prepare.yml
index b34ca4c5..0d88f9d7 100644
--- a/molecule/raspberrypi/prepare.yml
+++ b/molecule/raspberrypi/prepare.yml
@@ -17,11 +17,12 @@
register: loop_device
changed_when: true
- - name: "Set test facts"
- ansible.builtin.set_fact:
- test_device: "{{ loop_device.stdout }}"
- cacheable: true
+ - name: "Format test device as ext4"
+ become: true
+ community.general.filesystem:
+ fstype: "ext4"
+ dev: "{{ loop_device.stdout }}"
- name: "Show test info"
ansible.builtin.debug:
- msg: "Test device: {{ test_device }}"
+ msg: "Test device: {{ loop_device.stdout }}"