Skip to content

Commit 6b43ed3

Browse files
authored
Kubernetes 1.31 and go1.23 (#584)
* Update go to 1.23.1 and kubernetes to 1.31.0 upgrade k8s k8s and go upgrade gen wip prevent duplicate controller registration errors * tidy gen grafana cloud gen * fix changelog * rename changelog and upgrade kind
1 parent 43680a0 commit 6b43ed3

16 files changed

+426
-601
lines changed

.github/workflows/pull_request.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ jobs:
3535
uses: helm/[email protected]
3636
with:
3737
install_only: true
38-
version: v0.17.0
38+
version: v0.24.0
3939
- name: Setup Kind
4040
run: |
4141
./ci/setup-kind.sh skv2-test-remote
4242
- uses: azure/setup-kubectl@v3
4343
with:
44-
version: 'v1.24.7'
44+
version: 'v1.31.0'
4545
- name: Install deps for codegen
4646
run: |
4747
make install-tools

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ generated-code: install-tools update-licenses
5959
go run api/generate.go
6060
# the api/generate.go command is separated out to enable us to run go generate on the generated files (used for mockgen)
6161
# this re-gens test protos
62-
PATH=$(DEPSGOBIN):$(PATH) go test ./codegen
62+
go test ./codegen
6363
go generate -v ./...
6464
$(DEPSGOBIN)/goimports -w .
6565
go mod tidy
+92
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
changelog:
2+
- type: BREAKING_CHANGE
3+
description: "Bump dependencies to support Kubernetes 1.31"
4+
issueLink: https://github.com/solo-io/gloo/issues/9683
5+
- type: DEPENDENCY_BUMP
6+
dependencyOwner: BurntSushi
7+
dependencyRepo: toml
8+
dependencyTag: v1.3.2
9+
- type: DEPENDENCY_BUMP
10+
dependencyOwner: Masterminds
11+
dependencyRepo: sprig
12+
dependencyTag: v3.2.3
13+
- type: DEPENDENCY_BUMP
14+
dependencyOwner: go-logr
15+
dependencyRepo: logr
16+
dependencyTag: v1.4.2
17+
- type: DEPENDENCY_BUMP
18+
dependencyOwner: grafana
19+
dependencyRepo: pyroscope-go
20+
dependencyTag: v0.1.8
21+
- type: DEPENDENCY_BUMP
22+
dependencyOwner: hashicorp
23+
dependencyRepo: go-multierror
24+
dependencyTag: v1.1.1
25+
- type: DEPENDENCY_BUMP
26+
dependencyOwner: onsi
27+
dependencyRepo: gomega
28+
dependencyTag: v2.19.0
29+
- type: DEPENDENCY_BUMP
30+
dependencyOwner: onsi
31+
dependencyRepo: gomega
32+
dependencyTag: v1.33.1
33+
- type: DEPENDENCY_BUMP
34+
dependencyOwner: prometheus
35+
dependencyRepo: client_golang
36+
dependencyTag: v1.19.1
37+
- type: DEPENDENCY_BUMP
38+
dependencyOwner: sirupsen
39+
dependencyRepo: logrus
40+
dependencyTag: v1.9.3
41+
- type: DEPENDENCY_BUMP
42+
dependencyOwner: solo-io
43+
dependencyRepo: go-utils
44+
dependencyTag: v0.26.0
45+
- type: DEPENDENCY_BUMP
46+
dependencyOwner: solo-io
47+
dependencyRepo: k8s-utils
48+
dependencyTag: v0.8.0
49+
- type: DEPENDENCY_BUMP
50+
dependencyOwner: golang
51+
dependencyRepo: x/exp
52+
dependencyTag: v0.0.0-20230515195305-f3d0a9c9a5cc
53+
- type: DEPENDENCY_BUMP
54+
dependencyOwner: golang
55+
dependencyRepo: x/tools
56+
dependencyTag: v0.22.0
57+
- type: DEPENDENCY_BUMP
58+
dependencyOwner: google
59+
dependencyRepo: protobuf
60+
dependencyTag: v1.34.2
61+
- type: DEPENDENCY_BUMP
62+
dependencyOwner: k8s.io
63+
dependencyRepo: api
64+
dependencyTag: v0.31.0
65+
- type: DEPENDENCY_BUMP
66+
dependencyOwner: k8s.io
67+
dependencyRepo: apiextensions-apiserver
68+
dependencyTag: v0.31.0
69+
- type: DEPENDENCY_BUMP
70+
dependencyOwner: k8s.io
71+
dependencyRepo: apimachinery
72+
dependencyTag: v0.31.0
73+
- type: DEPENDENCY_BUMP
74+
dependencyOwner: k8s.io
75+
dependencyRepo: client-go
76+
dependencyTag: v0.31.0
77+
- type: DEPENDENCY_BUMP
78+
dependencyOwner: k8s.io
79+
dependencyRepo: code-generator
80+
dependencyTag: v0.31.0
81+
- type: DEPENDENCY_BUMP
82+
dependencyOwner: k8s.io
83+
dependencyRepo: klog
84+
dependencyTag: v2.130.1
85+
- type: DEPENDENCY_BUMP
86+
dependencyOwner: k8s.io
87+
dependencyRepo: utils
88+
dependencyTag: v0.0.0-20240711033017-18e509b52bc8
89+
- type: DEPENDENCY_BUMP
90+
dependencyOwner: sigs.k8s.io
91+
dependencyRepo: controller-runtime
92+
dependencyTag: v0.19.0

ci/oss_compliance/osa_provided.md

+24-23
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
Name|Version|License
22
---|---|---
33
[perks/quantile](https://github.com/beorn7/perks)|v1.0.1|MIT License
4-
[xxhash/v2](https://github.com/cespare/xxhash)|v2.2.0|MIT License
5-
[go-spew/spew](https://github.com/davecgh/go-spew)|v1.1.1|ISC License
4+
[xxhash/v2](https://github.com/cespare/xxhash)|v2.3.0|MIT License
5+
[go-spew/spew](https://github.com/davecgh/go-spew)|v1.1.2-0.20180830191138-d8f796af33cc|ISC License
66
[v3/log](https://github.com/emicklei/go-restful)|v3.11.0|MIT License
77
[internal/json](https://github.com/evanphx/json-patch)|v5.9.0|BSD 3-clause "New" or "Revised" License
88
[fsnotify/fsnotify](https://github.com/fsnotify/fsnotify)|v1.7.0|BSD 3-clause "New" or "Revised" License
9-
[go-logr/logr](https://github.com/go-logr/logr)|v1.4.1|Apache License 2.0
9+
[cbor/v2](https://github.com/fxamacker/cbor)|v2.7.0|MIT License
10+
[go-logr/logr](https://github.com/go-logr/logr)|v1.4.2|Apache License 2.0
1011
[go-openapi/jsonpointer](https://github.com/go-openapi/jsonpointer)|v0.20.2|Apache License 2.0
1112
[jsonreference/internal](https://github.com/go-openapi/jsonreference)|v0.20.2|Apache License 2.0
1213
[go-openapi/swag](https://github.com/go-openapi/swag)|v0.22.8|Apache License 2.0
@@ -16,42 +17,42 @@ Name|Version|License
1617
[google/gnostic-models](https://github.com/google/gnostic-models)|v0.6.8|Apache License 2.0
1718
[cmp/internal](https://github.com/google/go-cmp)|v0.6.0|BSD 3-clause "New" or "Revised" License
1819
[gofuzz/bytesource](https://github.com/google/gofuzz)|v1.2.0|Apache License 2.0
19-
[google/uuid](https://github.com/google/uuid)|v1.3.0|BSD 3-clause "New" or "Revised" License
20-
[pyroscope-go/godeltaprof](https://github.com/grafana/pyroscope-go)|v0.1.6|Apache License 2.0
20+
[google/uuid](https://github.com/google/uuid)|v1.6.0|BSD 3-clause "New" or "Revised" License
21+
[pyroscope-go/godeltaprof](https://github.com/grafana/pyroscope-go)|v0.1.8|Apache License 2.0
2122
[josharian/intern](https://github.com/josharian/intern)|v1.0.0|MIT License
2223
[json-iterator/go](https://github.com/json-iterator/go)|v1.1.12|MIT License
23-
[klauspost/compress](https://github.com/klauspost/compress)|v1.17.3|Apache License 2.0
24+
[klauspost/compress](https://github.com/klauspost/compress)|v1.17.8|Apache License 2.0
2425
[mailru/easyjson](https://github.com/mailru/easyjson)|v0.7.7|MIT License
25-
[v2/pbutil](https://github.com/matttproud/golang_protobuf_extensions)|v2.0.0|Apache License 2.0
2626
[modern-go/concurrent](https://github.com/modern-go/concurrent)|v0.0.0-20180306012644-bacd9c7ef1dd|Apache License 2.0
2727
[modern-go/reflect2](https://github.com/modern-go/reflect2)|v1.0.2|Apache License 2.0
2828
[munnerz/goautoneg](https://github.com/munnerz/goautoneg)|v0.0.0-20191010083416-a7dc8b61c822|BSD 3-clause "New" or "Revised" License
2929
[pkg/errors](https://github.com/pkg/errors)|v0.9.1|BSD 2-clause "Simplified" License
30-
[client_golang/prometheus](https://github.com/prometheus/client_golang)|v1.18.0|Apache License 2.0
31-
[client_model/go](https://github.com/prometheus/client_model)|v0.5.0|Apache License 2.0
32-
[prometheus/common](https://github.com/prometheus/common)|v0.45.0|Apache License 2.0
33-
[procfs/internal](https://github.com/prometheus/procfs)|v0.12.0|Apache License 2.0
30+
[client_golang/prometheus](https://github.com/prometheus/client_golang)|v1.19.1|Apache License 2.0
31+
[client_model/go](https://github.com/prometheus/client_model)|v0.6.1|Apache License 2.0
32+
[prometheus/common](https://github.com/prometheus/common)|v0.55.0|Apache License 2.0
33+
[procfs/internal](https://github.com/prometheus/procfs)|v0.15.1|Apache License 2.0
3434
[rotisserie/eris](https://github.com/rotisserie/eris)|v0.1.1|MIT License
35+
[x448/float16](https://github.com/x448/float16)|v0.8.4|MIT License
3536
[go.uber.org/multierr](https://go.uber.org/multierr)|v1.11.0|MIT License
3637
[go.uber.org/zap](https://go.uber.org/zap)|v1.26.0|MIT License
37-
[exp/maps](https://golang.org/x/exp/maps)|v0.0.0-20220921164117-439092de6870|BSD 3-clause "New" or "Revised" License
38-
[x/net](https://golang.org/x/net)|v0.23.0|BSD 3-clause "New" or "Revised" License
39-
[oauth2/internal](https://golang.org/x/oauth2/internal)|v0.12.0|BSD 3-clause "New" or "Revised" License
40-
[x/term](https://golang.org/x/term)|v0.18.0|BSD 3-clause "New" or "Revised" License
41-
[x/text](https://golang.org/x/text)|v0.14.0|BSD 3-clause "New" or "Revised" License
38+
[exp/maps](https://golang.org/x/exp/maps)|v0.0.0-20230515195305-f3d0a9c9a5cc|BSD 3-clause "New" or "Revised" License
39+
[x/net](https://golang.org/x/net)|v0.26.0|BSD 3-clause "New" or "Revised" License
40+
[oauth2/internal](https://golang.org/x/oauth2/internal)|v0.21.0|BSD 3-clause "New" or "Revised" License
41+
[x/term](https://golang.org/x/term)|v0.23.0|BSD 3-clause "New" or "Revised" License
42+
[x/text](https://golang.org/x/text)|v0.17.0|BSD 3-clause "New" or "Revised" License
4243
[time/rate](https://golang.org/x/time/rate)|v0.3.0|BSD 3-clause "New" or "Revised" License
4344
[jsonpatch/v2](https://gomodules.xyz/jsonpatch/v2)|v2.4.0|Apache License 2.0
44-
[google.golang.org/protobuf](https://google.golang.org/protobuf)|v1.33.0|BSD 3-clause "New" or "Revised" License
45+
[google.golang.org/protobuf](https://google.golang.org/protobuf)|v1.34.2|BSD 3-clause "New" or "Revised" License
4546
[gopkg.in/inf.v0](https://gopkg.in/inf.v0)|v0.9.1|BSD 3-clause "New" or "Revised" License
4647
[gopkg.in/yaml.v2](https://gopkg.in/yaml.v2)|v2.4.0|Apache License 2.0
4748
[gopkg.in/yaml.v3](https://gopkg.in/yaml.v3)|v3.0.1|MIT License
48-
[k8s.io/api](https://k8s.io/api)|v0.30.0|Apache License 2.0
49-
[k8s.io/apimachinery](https://k8s.io/apimachinery)|v0.30.0|Apache License 2.0
50-
[k8s.io/client-go](https://k8s.io/client-go)|v0.30.0|Apache License 2.0
51-
[v2/internal](https://k8s.io/klog/v2/internal)|v2.120.1|Apache License 2.0
49+
[k8s.io/api](https://k8s.io/api)|v0.31.0|Apache License 2.0
50+
[k8s.io/apimachinery](https://k8s.io/apimachinery)|v0.31.0|Apache License 2.0
51+
[k8s.io/client-go](https://k8s.io/client-go)|v0.31.0|Apache License 2.0
52+
[v2/internal](https://k8s.io/klog/v2/internal)|v2.130.1|Apache License 2.0
5253
[kube-openapi/pkg](https://k8s.io/kube-openapi/pkg)|v0.0.0-20240228011516-70dd3763d340|Apache License 2.0
53-
[k8s.io/utils](https://k8s.io/utils)|v0.0.0-20230726121419-3b25d923346b|Apache License 2.0
54-
[controller-runtime/pkg](https://sigs.k8s.io/controller-runtime/pkg)|v0.18.2|Apache License 2.0
54+
[k8s.io/utils](https://k8s.io/utils)|v0.0.0-20240711033017-18e509b52bc8|Apache License 2.0
55+
[controller-runtime/pkg](https://sigs.k8s.io/controller-runtime/pkg)|v0.19.0|Apache License 2.0
5556
[encoding/json](https://sigs.k8s.io/json/internal/golang/encoding/json)|v0.0.0-20221116044647-bc3834ca7abd|Apache License 2.0
5657
[structured-merge-diff/v4](https://sigs.k8s.io/structured-merge-diff/v4)|v4.4.1|Apache License 2.0
5758
[yaml/goyaml.v2](https://sigs.k8s.io/yaml/goyaml.v2)|v1.4.0|Apache License 2.0

codegen/render/kube_multicluster_test.go

+11-2
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,10 @@ import (
2727
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2828
"k8s.io/apimachinery/pkg/types"
2929
"k8s.io/client-go/kubernetes"
30+
"k8s.io/utils/ptr"
3031
"sigs.k8s.io/controller-runtime/pkg/cache"
3132
"sigs.k8s.io/controller-runtime/pkg/client"
33+
"sigs.k8s.io/controller-runtime/pkg/config"
3234
"sigs.k8s.io/controller-runtime/pkg/log"
3335
zaputil "sigs.k8s.io/controller-runtime/pkg/log/zap"
3436
"sigs.k8s.io/controller-runtime/pkg/manager"
@@ -124,7 +126,7 @@ var _ = WithRemoteClusterContextDescribe("Multicluster", func() {
124126
It("works", func() {
125127
cw := watch.NewClusterWatcher(ctx, manager.Options{
126128
Cache: cache.Options{
127-
DefaultNamespaces: map[string]cache.Config{ns: cache.Config{}},
129+
DefaultNamespaces: map[string]cache.Config{ns: {}},
128130
},
129131
}, watch.RetryOptions{}, nil)
130132
err := cw.Run(masterManager)
@@ -194,8 +196,15 @@ var _ = WithRemoteClusterContextDescribe("Multicluster", func() {
194196

195197
BeforeEach(func() {
196198
cw = watch.NewClusterWatcher(ctx, manager.Options{
199+
Controller: config.Controller{
200+
// see https://github.com/kubernetes-sigs/controller-runtime/issues/2937
201+
// in short, our tests reuse the same name (reasonably so) and the controller-runtime
202+
// package does not reset the stack of controller names between tests, so we disable
203+
// the name validation here.
204+
SkipNameValidation: ptr.To(true),
205+
},
197206
Cache: cache.Options{
198-
DefaultNamespaces: map[string]cache.Config{ns: cache.Config{}},
207+
DefaultNamespaces: map[string]cache.Config{ns: {}},
199208
},
200209
}, watch.RetryOptions{}, nil)
201210
})

codegen/test/chart/values.schema.json

+63-22
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,9 @@
218218
"properties": {
219219
"name": {
220220
"type": "string"
221+
},
222+
"request": {
223+
"type": "string"
221224
}
222225
},
223226
"type": "object"
@@ -615,6 +618,9 @@
615618
"properties": {
616619
"name": {
617620
"type": "string"
621+
},
622+
"request": {
623+
"type": "string"
618624
}
619625
},
620626
"type": "object"
@@ -955,6 +961,16 @@
955961
}
956962
]
957963
},
964+
"supplementalGroupsPolicy": {
965+
"anyOf": [
966+
{
967+
"type": "string"
968+
},
969+
{
970+
"type": "null"
971+
}
972+
]
973+
},
958974
"fsGroup": {
959975
"anyOf": [
960976
{
@@ -3245,6 +3261,17 @@
32453261
}
32463262
},
32473263
"type": "object"
3264+
},
3265+
"image": {
3266+
"properties": {
3267+
"reference": {
3268+
"type": "string"
3269+
},
3270+
"pullPolicy": {
3271+
"type": "string"
3272+
}
3273+
},
3274+
"type": "object"
32483275
}
32493276
},
32503277
"type": "object"
@@ -3582,6 +3609,9 @@
35823609
"properties": {
35833610
"name": {
35843611
"type": "string"
3612+
},
3613+
"request": {
3614+
"type": "string"
35853615
}
35863616
},
35873617
"type": "object"
@@ -4893,6 +4923,9 @@
48934923
"properties": {
48944924
"name": {
48954925
"type": "string"
4926+
},
4927+
"request": {
4928+
"type": "string"
48964929
}
48974930
},
48984931
"type": "object"
@@ -6204,6 +6237,9 @@
62046237
"properties": {
62056238
"name": {
62066239
"type": "string"
6240+
},
6241+
"request": {
6242+
"type": "string"
62076243
}
62086244
},
62096245
"type": "object"
@@ -7359,6 +7395,16 @@
73597395
}
73607396
]
73617397
},
7398+
"supplementalGroupsPolicy": {
7399+
"anyOf": [
7400+
{
7401+
"type": "string"
7402+
},
7403+
{
7404+
"type": "null"
7405+
}
7406+
]
7407+
},
73627408
"fsGroup": {
73637409
"anyOf": [
73647410
{
@@ -8857,30 +8903,25 @@
88578903
"name": {
88588904
"type": "string"
88598905
},
8860-
"source": {
8861-
"properties": {
8862-
"resourceClaimName": {
8863-
"anyOf": [
8864-
{
8865-
"type": "string"
8866-
},
8867-
{
8868-
"type": "null"
8869-
}
8870-
]
8906+
"resourceClaimName": {
8907+
"anyOf": [
8908+
{
8909+
"type": "string"
88718910
},
8872-
"resourceClaimTemplateName": {
8873-
"anyOf": [
8874-
{
8875-
"type": "string"
8876-
},
8877-
{
8878-
"type": "null"
8879-
}
8880-
]
8911+
{
8912+
"type": "null"
88818913
}
8882-
},
8883-
"type": "object"
8914+
]
8915+
},
8916+
"resourceClaimTemplateName": {
8917+
"anyOf": [
8918+
{
8919+
"type": "string"
8920+
},
8921+
{
8922+
"type": "null"
8923+
}
8924+
]
88848925
}
88858926
},
88868927
"type": "object"

0 commit comments

Comments
 (0)