Update ipxe and grub configuration for clarity #1156
Also: - Defined a menu for iPXE - Support a IPXEMenuEntry tag to select the boot method - Merge iPXE dracut support into default.ipxe (use IPXEMenuEntry=dracut) Signed-off-by: Jonathon Anderson <janderson@ciq.com>
This commit is contained in:
@@ -226,7 +226,31 @@ func (legacy *Node) Upgrade(addDefaults bool, replaceOverlays bool) (upgraded *n
|
||||
if upgraded.Ipmi.Write == "" && legacy.IpmiWrite != "" {
|
||||
warnError(upgraded.Ipmi.Write.Set(legacy.IpmiWrite))
|
||||
}
|
||||
upgraded.Ipxe = legacy.Ipxe
|
||||
if legacy.Keys != nil {
|
||||
for key, value := range legacy.Keys {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
if legacy.Tags != nil {
|
||||
for key, value := range legacy.Tags {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
for _, tag := range legacy.TagsDel {
|
||||
delete(upgraded.Tags, tag)
|
||||
}
|
||||
if legacy.Ipxe == "dracut" {
|
||||
if _, ok := upgraded.Tags["IPXEMenuEntry"]; !ok {
|
||||
wwlog.Info("Replacing ipxe template 'dracut' with 'default' and setting tag 'IPXEMenuEntry=dracut'")
|
||||
upgraded.Ipxe = "default"
|
||||
upgraded.Tags["IPXEMenuEntry"] = "dracut"
|
||||
} else {
|
||||
wwlog.Warn("Found ipxe template 'dracut' but tag 'IPXEMenuEntry' is already set; ignoring")
|
||||
upgraded.Ipxe = legacy.Ipxe
|
||||
}
|
||||
} else {
|
||||
upgraded.Ipxe = legacy.Ipxe
|
||||
}
|
||||
if legacy.Kernel != nil {
|
||||
upgraded.Kernel = legacy.Kernel.Upgrade(upgraded.ImageName)
|
||||
} else {
|
||||
@@ -237,11 +261,6 @@ func (legacy *Node) Upgrade(addDefaults bool, replaceOverlays bool) (upgraded *n
|
||||
}
|
||||
upgraded.Kernel = inlineKernel.Upgrade(upgraded.ImageName)
|
||||
}
|
||||
if legacy.Keys != nil {
|
||||
for key, value := range legacy.Keys {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
if legacy.NetDevs != nil {
|
||||
for name, netDev := range legacy.NetDevs {
|
||||
upgraded.NetDevs[name] = netDev.Upgrade(false)
|
||||
@@ -313,14 +332,6 @@ func (legacy *Node) Upgrade(addDefaults bool, replaceOverlays bool) (upgraded *n
|
||||
genericSplitOverlays)
|
||||
}
|
||||
}
|
||||
if legacy.Tags != nil {
|
||||
for key, value := range legacy.Tags {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
for _, tag := range legacy.TagsDel {
|
||||
delete(upgraded.Tags, tag)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -427,7 +438,31 @@ func (legacy *Profile) Upgrade(addDefaults bool, replaceOverlays bool) (upgraded
|
||||
if upgraded.Ipmi.Write == "" && legacy.IpmiWrite != "" {
|
||||
warnError(upgraded.Ipmi.Write.Set(legacy.IpmiWrite))
|
||||
}
|
||||
upgraded.Ipxe = legacy.Ipxe
|
||||
if legacy.Keys != nil {
|
||||
for key, value := range legacy.Keys {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
if legacy.Tags != nil {
|
||||
for key, value := range legacy.Tags {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
for _, tag := range legacy.TagsDel {
|
||||
delete(upgraded.Tags, tag)
|
||||
}
|
||||
if legacy.Ipxe == "dracut" {
|
||||
if _, ok := upgraded.Tags["IPXEMenuEntry"]; !ok {
|
||||
wwlog.Info("Replacing ipxe template 'dracut' with 'default' and setting tag 'IPXEMenuEntry=dracut'")
|
||||
upgraded.Ipxe = "default"
|
||||
upgraded.Tags["IPXEMenuEntry"] = "dracut"
|
||||
} else {
|
||||
wwlog.Warn("Found ipxe template 'dracut' but tag 'IPXEMenuEntry' is already set; ignoring")
|
||||
upgraded.Ipxe = legacy.Ipxe
|
||||
}
|
||||
} else {
|
||||
upgraded.Ipxe = legacy.Ipxe
|
||||
}
|
||||
if legacy.Kernel != nil {
|
||||
upgraded.Kernel = legacy.Kernel.Upgrade(upgraded.ImageName)
|
||||
} else {
|
||||
@@ -438,11 +473,6 @@ func (legacy *Profile) Upgrade(addDefaults bool, replaceOverlays bool) (upgraded
|
||||
}
|
||||
upgraded.Kernel = inlineKernel.Upgrade(upgraded.ImageName)
|
||||
}
|
||||
if legacy.Keys != nil {
|
||||
for key, value := range legacy.Keys {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
if legacy.NetDevs != nil {
|
||||
for name, netDev := range legacy.NetDevs {
|
||||
upgraded.NetDevs[name] = netDev.Upgrade(addDefaults)
|
||||
@@ -503,14 +533,6 @@ func (legacy *Profile) Upgrade(addDefaults bool, replaceOverlays bool) (upgraded
|
||||
genericSplitOverlays)
|
||||
}
|
||||
}
|
||||
if legacy.Tags != nil {
|
||||
for key, value := range legacy.Tags {
|
||||
upgraded.Tags[key] = value
|
||||
}
|
||||
}
|
||||
for _, tag := range legacy.TagsDel {
|
||||
delete(upgraded.Tags, tag)
|
||||
}
|
||||
if legacy.Resources != nil {
|
||||
for key, value := range legacy.Resources {
|
||||
upgraded.Resources[key] = value
|
||||
|
||||
Reference in New Issue
Block a user