- name: Partition disk become: true command: cmd: "sgdisk -a1 -n1:34:2047 -t1:EF02 -n2:2048:+256M -t2:EF00 -n3:0:0:+100% -t3:8300 {{ vyos_raw_img }}" - name: Reread partitions from image and mount to loopback become: true shell: "kpartx -av {{ vyos_raw_img }} | awk '{ print $3 }'" register: loop_partitions - name: Find loop device path become: true shell: "losetup -l -O NAME,BACK-FILE | awk '{ if (match($2, \"{{ vyos_raw_img }}\")) print $1}'" register: loop_device - name: Set vyos_target_drive fact set_fact: vyos_target_drive: "{{ loop_device.stdout | regex_replace('^/dev/(loop.*)$', '/dev/mapper/\\1') }}" - name: Create a fileystem on EFI partition become: true filesystem: fstype: "vfat" device: "{{ vyos_target_drive }}p2" opts: "-n EFI -F 32 -s 1" - name: Create a fileystem on root partition become: true filesystem: fstype: "{{ vyos_root_fstype }}" device: "{{ vyos_target_drive }}p3" opts: "-L persistence" - name: Mount root partition become: true mount: name: "{{ vyos_write_root }}" src: "{{ vyos_target_drive }}p3" fstype: "{{ vyos_root_fstype }}" state: mounted