Skip to content

ServerBootConfiguration Reconciliation fails without ignitionSecretRef #102

@lukasfrank

Description

@lukasfrank

What happened:
Reconciliation is stuck due to nil-pointer deref if no ignitionSecretRef is provided:

2024-11-08T13:29:19Z	ERROR	Observed a panic	{"controller": "serverbootconfiguration", "controllerGroup": "metal.ironcore.dev", "controllerKind": "ServerBootConfiguration", "ServerBootConfiguration": {"name":"feos-metal","namespace":"default"}, "namespace": "default", "name": "feos-metal", "reconcileID": "1fb0551e-33ac-450b-9d3f-e78cb953e339", "panic": "runtime error: invalid memory address or nil pointer dereference", "panicGoValue": "\"invalid memory address or nil pointer dereference\"", "stacktrace": "goroutine 60 [running]:\nk8s.io/apimachinery/pkg/util/runtime.logPanic({0x1f3db20, 0xc000a09560}, {0x1a01880, 0x2d21430})\n\t/go/pkg/mod/k8s.io/apimachinery@v0.31.1/pkg/util/runtime/runtime.go:107 +0xbc\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).Reconcile.func1()\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.19.0/pkg/internal/controller/controller.go:105 +0x112\npanic({0x1a01880?, 0x2d21430?})\n\t/usr/local/go/src/runtime/panic.go:785 +0x132\ngithub.com/ironcore-dev/boot-operator/internal/controller.(*ServerBootConfigurationHTTPReconciler).reconcile(0xc000722f00, {0x1f3db20, 0xc000a09560}, {{0x1f42570?, 0xc000a09590?}, 0x1afba00?}, 0xc00064d900)\n\t/workspace/internal/controller/serverbootconfiguration_http_controller.go:89 +0x46b\ngithub.com/ironcore-dev/boot-operator/internal/controller.(*ServerBootConfigurationHTTPReconciler).reconcileExists(0x0?, {0x1f3db20?, 0xc000a09560?}, {{0x1f42570?, 0xc000a09590?}, 0xc000a09560?}, 0xc0014fab80?)\n\t/workspace/internal/controller/serverbootconfiguration_http_controller.go:50 +0x85\ngithub.com/ironcore-dev/boot-operator/internal/controller.(*ServerBootConfigurationHTTPReconciler).Reconcile(0xc000722f00, {0x1f3db20, 0xc000a09560}, {{{0xc0014fab80?, 0x1c62a21?}, {0xc0014fab76?, 0x100?}}})\n\t/workspace/internal/controller/serverbootconfiguration_http_controller.go:43 +0x17b\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).Reconcile(0xc000a094d0?, {0x1f3db20?, 0xc000a09560?}, {{{0xc0014fab80?, 0x0?}, {0xc0014fab76?, 0x0?}}})\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.19.0/pkg/internal/controller/controller.go:116 +0xbf\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).reconcileHandler(0x1f4c000, {0x1f3db58, 0xc0001eacd0}, {{{0xc0014fab80, 0x7}, {0xc0014fab76, 0xa}}})\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.19.0/pkg/internal/controller/controller.go:303 +0x3a5\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).processNextWorkItem(0x1f4c000, {0x1f3db58, 0xc0001eacd0})\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.19.0/pkg/internal/controller/controller.go:263 +0x20e\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).Start.func2.2()\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.19.0/pkg/internal/controller/controller.go:224 +0x85\ncreated by sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).Start.func2 in goroutine 152\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.19.0/pkg/internal/controller/controller.go:220 +0x490\n"}```

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions