system/host.yaml

43 lines
1.6 KiB
YAML

# # The subvol collection seems to be misbehaving?
# # https://github.com/ansible-collections/community.general/issues/7098
# # (and btrfs_subvol module working)
# - name: Create void btrfs subvol
# hosts: host
# vars:
# btrfs_target: 441a90a5-3da2-46ce-9e32-987569b746c9
# mount_dir: /mnt/void
# become: true
# tasks:
# - name: Create @voidroot subvool under root
# community.general.btrfs_subvolume:
# state: present
# name: "/@"
# filesystem_uuid: "{{ btrfs_root_uuid }}"
# # - name: Mount /boot part into voidroot mount
# - name: Mount btrfs subvol into mountdir
# vars:
# boot_dev_uuid:
# ansible.posix.mount:
# src: "{{ item.src }}"
# path: "{{ item.path }}"
# fstype: "{{ item.fstype }}"
# state: mounted
# with_items:
# - { fstype: 'ext4', src: '/dev/mapper/{{ vgname }}-root', path: '{{ mount_dir }}/' }
# # TODO: should take opts from fstab. Definitely needs 'boot' type option
# - { fstype: 'vfat', src: '/dev/disk/by-uuid/{{ boot_dev_uuid }}', path: '{{ mount_dir }}/boot' }
- name: Create voidlinux guest
hosts: hostsystem
become: true
vars:
mount_dir: /mnt/void
tarball_url: "https://repo-default.voidlinux.org/live/current/void-x86_64-ROOTFS-20250202.tar.xz"
tasks:
- name: Unpack rootfs
ansible.builtin.unarchive:
remote_src: yes # we already downloaded it to the 'remote' system
src: "{{ tarball_url }}"
dest: "{{ mount_dir }}"
# ONLY run if this file does not exist (could use any rootfs file to check)
creates: "{{ mount_dir }}/etc/os-release"