File warewulf-vnfs.sle.bootstrap_kernel.patch of Package warewulf-vnfs-gnu12-openmpi4
--- a/bin/wwbootstrap 2018-07-12 10:18:54.000000000 -0700
+++ b/bin/wwbootstrap 2018-07-12 10:24:12.000000000 -0700
@@ -183,8 +183,9 @@ foreach my $dir (split(":", $ENV{"PATH"})) {
mkpath("$tmpdir/initramfs");
-if (! -f "$opt_chroot/boot/$opt_kernel-$opt_kversion") {
- &eprint("Can't locate the boot kernel: ". $opt_chroot ."/boot/$opt_kernel-$opt_kversion\n");
+if (! -f "$opt_chroot/boot/$opt_kernel-$opt_kversion" && ! -f "$opt_chroot/boot/Image-$opt_kversion" &&
+ ! -f "$opt_chroot/lib/modules/$opt_kversion/$opt_kernel") {
+ &eprint("Can't locate the boot kernel\n");
exit 1;
}
@@ -398,7 +399,13 @@ if ($gzip_bin =~ /^([a-zA-Z0-9\-_\/\.]+)$/) {
# Attempt to gunzip the kernel, aarch64 kernels are compressed and iPXE can't boot gzip compressed kernels.
# Note, if the kernel isn't a gzip, IO::Uncompress::Gunzip makes a direct copy of the file.
-gunzip "$opt_chroot/boot/$opt_kernel-$opt_kversion" => "$tmpdir/kernel" or die "gunzip of kernel failed: $GunzipError\n";
+if (-e "$opt_chroot/boot/$opt_kernel-$opt_kversion") {
+ gunzip "$opt_chroot/boot/$opt_kernel-$opt_kversion" => "$tmpdir/kernel" or die "gunzip of kernel failed: $GunzipError\n";
+} elsif (-e "$opt_chroot/boot/Image-$opt_kversion") {
+ gunzip "$opt_chroot/boot/Image-$opt_kversion" => "$tmpdir/kernel" or die "gunzip of kernel failed: $GunzipError\n";
+} elsif (-e "$opt_chroot/lib/modules/$opt_kversion/$opt_kernel") {
+ gunzip "$opt_chroot/lib/modules/$opt_kversion/$opt_kernel" => "$tmpdir/kernel" or die "gunzip of kernel failed: $GunzipError\n";
+}
if ($opt_ucode) {
&nprint("Copying the CPU microcode initrd $opt_ucode to bootstrap\n");