Closed mikebaum closed 2 months ago
When checking out the project and following the developer guide the make manifests target fails with the following error:
make manifests
➜ benthos-captain git:(main) make manifests test -s /Users/mbaum/code/benthos-captain/bin/controller-gen && /Users/mbaum/code/benthos-captain/bin/controller-gen --version | grep -q v0.12.0 || \ GOBIN=/Users/mbaum/code/benthos-captain/bin go install sigs.k8s.io/controller-tools/cmd/controller-gen@v0.12.0 /Users/mbaum/code/benthos-captain/bin/controller-gen rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases panic: runtime error: invalid memory address or nil pointer dereference [recovered] panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x2 addr=0x0 pc=0x105462d14] goroutine 25 [running]: go/types.(*Checker).handleBailout(0x14000565200, 0x14001147d18) /opt/homebrew/opt/go/libexec/src/go/types/check.go:367 +0x9c panic({0x10573d380?, 0x105cd3f10?}) /opt/homebrew/opt/go/libexec/src/runtime/panic.go:770 +0x124 go/types.(*StdSizes).Sizeof(0x0, {0x105807fb0, 0x105cdc6c0}) /opt/homebrew/opt/go/libexec/src/go/types/sizes.go:228 +0x314 go/types.(*Config).sizeof(...) /opt/homebrew/opt/go/libexec/src/go/types/sizes.go:333 go/types.representableConst.func1({0x105807fb0?, 0x105cdc6c0?}) /opt/homebrew/opt/go/libexec/src/go/types/const.go:76 +0x9c go/types.representableConst({0x10580e210, 0x105ca8800}, 0x14000565200, 0x105cdc6c0, 0x14001147468) /opt/homebrew/opt/go/libexec/src/go/types/const.go:92 +0x138 go/types.(*Checker).representation(0x14000565200, 0x14001152680, 0x105cdc6c0) /opt/homebrew/opt/go/libexec/src/go/types/const.go:256 +0x68 go/types.(*Checker).implicitTypeAndValue(0x14000565200, 0x14001152680, {0x105807fd8, 0x140002bae70}) /opt/homebrew/opt/go/libexec/src/go/types/expr.go:375 +0x304 go/types.(*Checker).assignment(0x14000565200, 0x14001152680, {0x105807fd8, 0x140002bae70}, {0x10557b4a0, 0x14}) /opt/homebrew/opt/go/libexec/src/go/types/assignments.go:52 +0x23c go/types.(*Checker).initConst(0x14000565200, 0x140010ed500, 0x14001152680) /opt/homebrew/opt/go/libexec/src/go/types/assignments.go:126 +0x274 go/types.(*Checker).constDecl(0x14000565200, 0x140010ed500, {0x10580ab80, 0x14001274f00}, {0x10580ab80, 0x14001274f20}, 0x0) /opt/homebrew/opt/go/libexec/src/go/types/decl.go:490 +0x250 go/types.(*Checker).objDecl(0x14000565200, {0x105813360, 0x140010ed500}, 0x0) /opt/homebrew/opt/go/libexec/src/go/types/decl.go:191 +0x84c go/types.(*Checker).packageObjects(0x14000565200) /opt/homebrew/opt/go/libexec/src/go/types/resolver.go:693 +0x468 go/types.(*Checker).checkFiles(0x14000565200, {0x14001910c00, 0x5, 0x5}) /opt/homebrew/opt/go/libexec/src/go/types/check.go:408 +0x164 go/types.(*Checker).Files(...) /opt/homebrew/opt/go/libexec/src/go/types/check.go:372 sigs.k8s.io/controller-tools/pkg/loader.(*loader).typeCheck(0x140002ef470, 0x14000234580) /Users/mbaum/go/pkg/mod/sigs.k8s.io/controller-tools@v0.12.0/pkg/loader/loader.go:286 +0x2d8 sigs.k8s.io/controller-tools/pkg/loader.(*Package).NeedTypesInfo(0x14000234580) /Users/mbaum/go/pkg/mod/sigs.k8s.io/controller-tools@v0.12.0/pkg/loader/loader.go:99 +0x44 sigs.k8s.io/controller-tools/pkg/loader.(*TypeChecker).check(0x14000469a70, 0x14000234580) /Users/mbaum/go/pkg/mod/sigs.k8s.io/controller-tools@v0.12.0/pkg/loader/refs.go:268 +0x304 sigs.k8s.io/controller-tools/pkg/loader.(*TypeChecker).check.func1(0x0?) /Users/mbaum/go/pkg/mod/sigs.k8s.io/controller-tools@v0.12.0/pkg/loader/refs.go:262 +0x58 created by sigs.k8s.io/controller-tools/pkg/loader.(*TypeChecker).check in goroutine 103 /Users/mbaum/go/pkg/mod/sigs.k8s.io/controller-tools@v0.12.0/pkg/loader/refs.go:260 +0x230 make: *** [manifests] Error 2
Digging a bit this is related to the following upstream issue in the controller-tools project.
Updating the version of controller-tools to: v0.15.0 fixes the panic.
v0.15.0
Additionally the main func no longer compiles as breaking changes were made to the controller-runtime ctrl.Options type.
main
controller-runtime
ctrl.Options
Created PR #16 to fix this issue.
Fixed in #16
When checking out the project and following the developer guide the
make manifests
target fails with the following error:Digging a bit this is related to the following upstream issue in the controller-tools project.
Updating the version of controller-tools to:
v0.15.0
fixes the panic.Additionally the
main
func no longer compiles as breaking changes were made to thecontroller-runtime
ctrl.Options
type.