Refactor kernel support
- Remove kernel imports and kmods images - Repurpose KernelOverride as container path - Support Kernel.Version as version prefix for kernel selection - Compare initramfs by version Signed-off-by: Jonathon Anderson <janderson@ciq.com>
This commit is contained in:
committed by
Christian Goll
parent
d87ed27d8d
commit
8f21d54243
@@ -39,11 +39,6 @@ imgextract --name system ${uri_base}&stage=system&compress=gz || goto rebo
|
||||
echo Downloading Runtime Overlay:
|
||||
imgextract --name runtime ${uri_base}&stage=runtime&compress=gz && set runtime_initrd initrd=runtime || echo Failed downloading runtime overlay.
|
||||
|
||||
{{if ne .KernelOverride "" -}}
|
||||
echo Downloading Kernel Modules:
|
||||
imgextract --name kmods ${uri_base}&stage=kmods&compress=gz || goto reboot
|
||||
{{- end}}
|
||||
|
||||
goto imoktogo
|
||||
|
||||
:nocompress
|
||||
@@ -60,11 +55,6 @@ initrd --name system ${uri_base}&stage=system || goto reboot
|
||||
echo Downloading Runtime Overlay:
|
||||
initrd --name runtime ${uri_base}&stage=runtime && set runtime_initrd initrd=runtime || echo Failed downloading runtime overlay.
|
||||
|
||||
{{if ne .KernelOverride "" -}}
|
||||
echo Downloading Kernel Modules:
|
||||
initrd --name kmods ${uri_base}&stage=kmods || goto reboot
|
||||
{{- end}}
|
||||
|
||||
goto imoktogo
|
||||
|
||||
:noefi
|
||||
@@ -81,21 +71,11 @@ initrd --name system ${uri_base}&stage=system&compress=gz || goto reboot
|
||||
echo Downloading Runtime Overlay:
|
||||
initrd --name runtime ${uri_base}&stage=runtime&compress=gz && set runtime_initrd initrd=runtime || echo Failed downloading runtime overlay.
|
||||
|
||||
{{if ne .KernelOverride "" -}}
|
||||
echo Downloading Kernel Modules:
|
||||
initrd --name kmods ${uri_base}&stage=kmods&compress=gz || goto reboot
|
||||
{{- end}}
|
||||
|
||||
|
||||
:imoktogo
|
||||
|
||||
{{if ne .KernelOverride "" -}}
|
||||
echo boot kernel initrd=container initrd=kmods initrd=system ${runtime_initrd} wwid={{.Hwaddr}} {{.KernelArgs}}
|
||||
boot kernel initrd=container initrd=kmods initrd=system ${runtime_initrd} wwid={{.Hwaddr}} {{.KernelArgs}} || goto reboot
|
||||
{{- else -}}
|
||||
echo boot kernel initrd=container initrd=system ${runtime_initrd} wwid={{.Hwaddr}} {{.KernelArgs}}
|
||||
boot kernel initrd=container initrd=system ${runtime_initrd} wwid={{.Hwaddr}} {{.KernelArgs}} || goto reboot
|
||||
{{- end}}
|
||||
|
||||
:reboot
|
||||
echo
|
||||
|
||||
@@ -20,23 +20,14 @@ echo Warewulf Controller: {{.Ipaddr}}
|
||||
echo Downloading Kernel Image:
|
||||
kernel --name kernel ${uri}&stage=kernel || goto reboot
|
||||
|
||||
{{if ne .KernelOverride ""}}
|
||||
echo Downloading Kernel Modules:
|
||||
imgextract --name kmods ${uri}&stage=kmods&compress=gz || initrd --name kmods ${uri}&stage=kmods || goto reboot
|
||||
set kernel_mods initrd=kmods
|
||||
{{end}}
|
||||
|
||||
echo Downloading initramfs
|
||||
initrd --name initramfs ${uri}&stage=initramfs || goto reboot
|
||||
|
||||
set dracut_net rd.neednet=1 {{range $devname, $netdev := .NetDevs}}{{if and $netdev.Hwaddr $netdev.Device}} ifname={{$netdev.Device}}:{{$netdev.Hwaddr}} {{end}}{{end}}
|
||||
set dracut_wwinit root=wwinit wwinit.uri=${baseuri} {{if ne .KernelOverride ""}}wwinit.KernelOverride={{ .KernelOverride }}{{end}} init=/init
|
||||
set dracut_wwinit root=wwinit wwinit.uri=${baseuri} init=/init
|
||||
|
||||
echo Booting initramfs
|
||||
#echo Network KernelArgs: ${dracut_net}
|
||||
#echo Dracut wwinit KernelArgs: ${dracut_wwinit}
|
||||
#sleep 15
|
||||
boot kernel initrd=initramfs ${kernel_mods} ${dracut_net} ${dracut_wwinit} wwid={{.Hwaddr}} {{.KernelArgs}}
|
||||
boot kernel initrd=initramfs ${dracut_net} ${dracut_wwinit} wwid={{.Hwaddr}} {{.KernelArgs}}
|
||||
|
||||
|
||||
:reboot
|
||||
|
||||
Reference in New Issue
Block a user