- name: Install required packages (Linux) package: name: lvm2 state: present when: ansible_system == 'Linux' - name: Test lvg module block: - name: Create file to use as a disk device command: "dd if=/dev/zero of={{ ansible_user_dir }}/ansible_testing/img1 bs=1M count=10" - name: Create loop device for file command: "losetup --show -f {{ ansible_user_dir }}/ansible_testing/img1" register: loop_device1 - name: Create volume group on disk device lvg: vg: testvg pvs: "{{ loop_device1.stdout }}" - name: Create the volume group again to verify idempotence lvg: vg: testvg pvs: "{{ loop_device1.stdout }}" register: repeat_vg_create - name: Do all assertions to verify expected results assert: that: - repeat_vg_create is not changed always: - name: Remove test volume group lvg: vg: testvg state: absent - name: Detach loop device command: "losetup -d {{ loop_device1.stdout }}" when: - loop_device1 is defined - loop_device1.stdout is defined - loop_device1.stdout is match("/dev/.*") - name: Remove the file file: path: "{{ ansible_user_dir }}/ansible_testing/img1" state: absent