From b36b2e9674693456ce7866a7f4ec1b81ae36d663 Mon Sep 17 00:00:00 2001 From: Jonathon Anderson Date: Wed, 17 Dec 2025 10:54:10 -0700 Subject: [PATCH] Adjust sfdisk --label gpt to only apply when wiping the disk Signed-off-by: Jonathon Anderson --- overlays/sfdisk/internal/sfdisk_test.go | 4 ++-- overlays/sfdisk/rootfs/warewulf/wwinit.d/10-sfdisk.sh.ww | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/overlays/sfdisk/internal/sfdisk_test.go b/overlays/sfdisk/internal/sfdisk_test.go index 1ab68b69..bc0c9b6a 100644 --- a/overlays/sfdisk/internal/sfdisk_test.go +++ b/overlays/sfdisk/internal/sfdisk_test.go @@ -181,7 +181,7 @@ if ! command -v sfdisk >/dev/null ; then info "warewulf: sfdisk not found, skipping partitioning" else : info "warewulf: sfdisk: partitioning /dev/sda" - sfdisk --label gpt --wipe "auto" "/dev/sda" < "${PREFIX}/warewulf/sfdisk/device-0" || die "warewulf: sfdisk: failed to partition /dev/sda" + sfdisk --wipe "auto" "/dev/sda" < "${PREFIX}/warewulf/sfdisk/device-0" || die "warewulf: sfdisk: failed to partition /dev/sda" if command -v blockdev >/dev/null ; then info "warewulf: blockdev: re-reading partition table" @@ -238,7 +238,7 @@ if ! command -v sfdisk >/dev/null ; then info "warewulf: sfdisk not found, skipping partitioning" else : info "warewulf: sfdisk: partitioning /dev/sda" - sfdisk --label gpt --wipe "auto" "/dev/sda" < "${PREFIX}/warewulf/sfdisk/device-0" || die "warewulf: sfdisk: failed to partition /dev/sda" + sfdisk --wipe "auto" "/dev/sda" < "${PREFIX}/warewulf/sfdisk/device-0" || die "warewulf: sfdisk: failed to partition /dev/sda" if command -v blockdev >/dev/null ; then info "warewulf: blockdev: re-reading partition table" diff --git a/overlays/sfdisk/rootfs/warewulf/wwinit.d/10-sfdisk.sh.ww b/overlays/sfdisk/rootfs/warewulf/wwinit.d/10-sfdisk.sh.ww index f9d4ed55..284302a9 100644 --- a/overlays/sfdisk/rootfs/warewulf/wwinit.d/10-sfdisk.sh.ww +++ b/overlays/sfdisk/rootfs/warewulf/wwinit.d/10-sfdisk.sh.ww @@ -24,6 +24,7 @@ else : {{- $diskDict := dict "device" $disk.Id }} {{- if $disk.WipeTable }} {{- $_ := set $diskDict "wipe" "always" }} +{{- $_ := set $diskDict "labelOption" "--label gpt" }} {{- end }} {{- $disks = append $disks $diskDict }} {{- end }} @@ -33,7 +34,7 @@ else : {{- range $i, $device := $disks }} {{- if $device.device }} info "warewulf: sfdisk: partitioning {{ $device.device }}" - sfdisk --label gpt --wipe "{{ default "auto" $device.wipe }}" "{{ $device.device }}" < "${PREFIX}/warewulf/sfdisk/device-{{ $i }}" || die "warewulf: sfdisk: failed to partition {{ $device.device }}" + sfdisk {{ default "" $device.labelOption }} --wipe "{{ default "auto" $device.wipe }}" "{{ $device.device }}" < "${PREFIX}/warewulf/sfdisk/device-{{ $i }}" || die "warewulf: sfdisk: failed to partition {{ $device.device }}" if command -v blockdev >/dev/null ; then info "warewulf: blockdev: re-reading partition table"