-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Controller-runtime does not compile with client-go 1.31 with version v0.18.5 #2925
Comments
Broken by kubernetes/kubernetes#125560 |
In the past sometimes we have done tricks to support both versions concurrently. I don't see how we can do it in this case |
I am impacted by this as well. |
While this is not great, it is not something that we guarantee to support, see: https://github.com/kubernetes-sigs/controller-runtime#compatibility |
Can anyone impacted verify that if they upgrade client-go into the supported skew range that the problem is resolved? |
Ah I looked for a newer CR release but didn't see it since where I was looking filtered out 0.19 due to the -beta suffix. At least in my example reproducer that does seem to compile. |
Ah, makes sense! Yup 0.19 would be the correct release for k8s.io/* 1.31.0 I think we'll release it soon. Last thing we want to get done before is this one: #2901 (at least as far as I'm aware) |
Related Slack thread: https://kubernetes.slack.com/archives/CHGFYJVAN/p1723581467467729 |
thanks @sbueringer ! |
Hm, when I use 0.19, I get this problem: https://github.com/davidkarlsen/flyway-operator/actions/runs/10406586858/job/28819954478 |
that CI run is still referencing 0.29.0 versions of some kubernetes libraries, I think there's a version mismatch there or they have not all been bumped to 0.31.0 consistently
|
I figured out it was my controller-gen tooling being outdated. |
/retitle Controller-runtime does not compile with client-go 1.31 with version v0.18.5 Do we still need this open? I believe we released v0.19.0 and it works along with the table @sbueringer created on the README. |
From my POV good to close |
/close |
@troy0820: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API/CLIENT modules (nsx-operator/pkg/apis, nsx-operator/pkg/client), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module and Go 1.22 for CLIENT module due to dependencies. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API/CLIENT modules (nsx-operator/pkg/apis, nsx-operator/pkg/client), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module and Go 1.22 for CLIENT module due to dependencies. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API/CLIENT modules (nsx-operator/pkg/apis, nsx-operator/pkg/client), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module and Go 1.22 for CLIENT module due to dependencies. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API/CLIENT modules (nsx-operator/pkg/apis, nsx-operator/pkg/client), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module and Go 1.22 for CLIENT module due to dependencies. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
In order to ensure TLS 1.3 is supportted. We bump Golang version to 1.23.1 In this patch, we do: 1. Bump golangci to v1.61.0 in order to support golang v1.23.1 2. To increase flexibility for downstream consumers, we set a lower Go version in `go.mod` for API module (nsx-operator/pkg/apis), allowing them to choose their preferred Go version. However, we will keep the main module (nsx-operator) on the latest Go version. Currently, we set Go 1.21 for the API module. 3. Update controller-runtime to v0.19.0 for this issue: kubernetes-sigs/controller-runtime#2925 4. Update controller-gen to v16.5 to resolve the error below. ``` /Users/hsuy/Desktop/nsx-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1" output:crd:artifacts:config=build/yaml/crd/legacy/ /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) /Users/hsuy/go/pkg/mod/k8s.io/api@v0.31.2/core/v1/doc.go:21:1: missing argument "" (at <input>) k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus k8s.io/api/core/v1:-: unknown type "k8s.io/api/core/v1".ConditionStatus github.com/vmware-tanzu/nsx-operator/pkg/apis/legacy/v1alpha1:-: unable to locate schema for type "k8s.io/api/core/v1".ConditionStatus ``` Signed-off-by: Yun-Tang Hsu <yun-tang.hsu@broadcom.com>
Reproducer:
main.go
:go.mod
:Gives:
The text was updated successfully, but these errors were encountered: