From c750374c93682f18b4e91dec3c88dfdd1a8af3e2 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Mon, 29 Jun 2020 01:28:43 +0200 Subject: simplified partman early command --- .../preseed/templates/partman_early-command.sh.j2 | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'roles/installer/debian/preseed/templates/partman_early-command.sh.j2') diff --git a/roles/installer/debian/preseed/templates/partman_early-command.sh.j2 b/roles/installer/debian/preseed/templates/partman_early-command.sh.j2 index 08d3806d..9c720e92 100644 --- a/roles/installer/debian/preseed/templates/partman_early-command.sh.j2 +++ b/roles/installer/debian/preseed/templates/partman_early-command.sh.j2 @@ -4,30 +4,29 @@ umount -l /media || true {% if hostvars[install_hostname].install_cooked.disks.primary == "software-raid" %} -raid_disks="$(readlink -f {{ install_cooked.disks.raid.members | join(' ') }} | xargs)" -raid_config="{{ install_cooked.disks.raid.level }} {{ install_cooked.disks.raid.members | length }} 0" +disks="{% for disk in hostvars[install_hostname].install_cooked.disks.raid.members %}$(readlink -f {{ disk }}) {% endfor %}" raid_members_boot="" raid_members_lvm="" -for disk in $raid_disks; do +for disk in $disks; do [ -n "$raid_members_boot" ] && raid_members_boot="$raid_members_boot#" [ -n "$raid_members_lvm" ] && raid_members_lvm="$raid_members_lvm#" if echo "$disk" | grep -Eq "/dev/(s|v)d[a-z]"; then raid_members_boot="$raid_members_boot$disk"1 - raid_members_lvm="$raid_members_lvm$disk"1 + raid_members_lvm="$raid_members_lvm$disk"2 else raid_members_boot="$raid_members_boot$disk"p1 - raid_members_lvm="$raid_members_lvm$disk"p1 + raid_members_lvm="$raid_members_lvm$disk"p2 fi done +raid_config="{{ hostvars[install_hostname].install_cooked.disks.raid.level }} {{ hostvars[install_hostname].install_cooked.disks.raid.members | length }} 0" debconf-set partman-auto-raid/recipe "$raid_config ext4 /boot $raid_members_boot . $raid_config lvm - $raid_members_lvm ." -debconf-set partman-auto/disk "$raid_disks" -debconf-set grub-installer/bootdev "$raid_disks" {% else %} -debconf-set partman-auto/disk "$(readlink -f {{ hostvars[install_hostname].install_cooked.disks.primary }})" -debconf-set grub-installer/bootdev "$(readlink -f {{ hostvars[install_hostname].install_cooked.disks.primary }})" +disks="$(readlink -f {{ hostvars[install_hostname].install_cooked.disks.primary }})" {% endif %} +debconf-set partman-auto/disk "$disks" +debconf-set grub-installer/bootdev "$disks" ## https://unix.stackexchange.com/questions/510445/install-grub-bootloader-dynamically-to-multiple-disks . /usr/share/debconf/confmodule -- cgit v1.2.3