--- - name: Install LVM tools (if not present) ansible.builtin.package: name: lvm2 state: present - name: Check if Docker LV exists ansible.builtin.command: > "lvs --noheadings -o lv_name {{ hostvars[inventory_hostname]['vmid'] }}" register: lvs_output - name: Create logical volume for Docker community.general.lvol: vg: "{{ docker_vg }}" lv: "{{ docker_lv }}" size: "{{ docker_lv_size }}" state: present # when: docker_lv not in lvs_output.stdout # vars: # docker_lv: "{{ docker_lv }}" - name: Format logical volume with XFS community.general.filesystem: fstype: xfs dev: "/dev/{{ docker_vg }}/{{ docker_lv }}" opts: "-n ftype=1" - name: Create mount point for Docker volume ansible.builtin.file: path: "{{ docker_mountpoint }}" state: directory mode: '0755' - name: Mount Docker LV to VM filesystem ansible.posix.mount: path: "{{ docker_mountpoint }}" src: "/dev/{{ docker_vg }}/{{ docker_lv }}" fstype: xfs opts: defaults state: mounted