fix: fix nil panic on maintenance upgrade with partial config

Fix the nil dereferences when a Talos node is attempted to be upgraded while in maintenance mode and having a partial machine config.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
This commit is contained in:
Utku Ozdemir 2024-03-08 12:50:25 +03:00
parent aa70bfb9dc
commit 1bb6027ccd
No known key found for this signature in database
GPG Key ID: 65933E76F0549B0D

View File

@ -55,7 +55,7 @@ func RunInstallerContainer(disk, platform, ref string, cfg configcore.Config, cf
extensionsConfig []config.Extension
)
if cfg != nil {
if cfg != nil && cfg.Machine() != nil {
registriesConfig = cfg.Machine().Registries()
extensionsConfig = cfg.Machine().Install().Extensions()
} else {
@ -296,7 +296,7 @@ func OptionsFromUpgradeRequest(r runtime.Runtime, in *machineapi.UpgradeRequest)
WithForce(!in.GetPreserve()),
}
if r.Config() != nil {
if r.Config() != nil && r.Config().Machine() != nil {
opts = append(opts, WithExtraKernelArgs(r.Config().Machine().Install().ExtraKernelArgs()))
}