summaryrefslogtreecommitdiffstats
path: root/molecule
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
commitf3a3a5aee727f849e62563fde643fcabe029b5b3 (patch)
treec905dfd953f2b7503b5136ec62fb54b4c118b308 /molecule
parentb098d57899d03d1b7f536176a32a62c8b6e58784 (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')
-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 }}"