Skip to content

Commit 7f38d14

Browse files
authored
fix: data race issue due to mutating http.DefaultTransport (#1915)
* fix: data race issue due to mutating http.DefaultTransport * tests: konnect test correction - schema change * chore: added deck timeout=60s for konnect flows due too many ctx deadline errors in CI * feat: skip default injection during syncs (#1904)
1 parent 2417e30 commit 7f38d14

File tree

13 files changed

+495
-91
lines changed

13 files changed

+495
-91
lines changed

.github/workflows/integration-konnect.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ jobs:
1919
DECK_KONNECT_PASSWORD : ${{ secrets.DECK_KONNECT_PASSWORD }}
2020
DECK_KONNECT_ADDR : ${{ secrets.DECK_KONNECT_ADDR }}
2121
DECK_KONNECT_TOKEN : ${{ secrets.DECK_KONNECT_TOKEN }}
22+
DECK_TIMEOUT: ${{ vars.DECK_TIMEOUT || '60' }}
2223
runs-on: ubuntu-latest
2324
steps:
2425
- name: Harden Runner

cmd/common.go

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import (
1717
"github.com/kong/go-database-reconciler/pkg/diff"
1818
"github.com/kong/go-database-reconciler/pkg/dump"
1919
"github.com/kong/go-database-reconciler/pkg/file"
20+
"github.com/kong/go-database-reconciler/pkg/schema"
2021
"github.com/kong/go-database-reconciler/pkg/state"
2122
reconcilerUtils "github.com/kong/go-database-reconciler/pkg/utils"
2223
"github.com/kong/go-kong/kong"
@@ -29,6 +30,8 @@ var (
2930
assumeYes bool
3031
noMaskValues bool
3132
syncCmdAssumeYes bool
33+
34+
schemaRegistry *schema.Registry
3235
)
3336

3437
type mode int
@@ -191,6 +194,10 @@ func syncMain(ctx context.Context, filenames []string, dry bool, parallelism,
191194
var kongClient *kong.Client
192195
mode := getMode(targetContent)
193196
if mode == modeKonnect {
197+
if skipDefaultsFill {
198+
dumpConfig.SkipDefaults = true
199+
}
200+
194201
// Konnect ConsumerGroup APIs don't support the query-parameter list_consumers yet
195202
if dumpConfig.SkipConsumersWithConsumerGroups {
196203
return errors.New("the flag --skip-consumers-with-consumer-groups can not be used with Konnect")
@@ -279,6 +286,9 @@ func syncMain(ctx context.Context, filenames []string, dry bool, parallelism,
279286
}
280287
}
281288

289+
schemaRegistry = schema.NewRegistry(kongClient, mode == modeKonnect)
290+
dumpConfig.SchemaRegistry = schemaRegistry
291+
282292
dumpConfig.IsConsumerGroupPolicyOverrideSet = determinePolicyOverride(*targetContent, dumpConfig)
283293

284294
dumpConfig.SelectorTags, err = determineSelectorTag(*targetContent, dumpConfig)
@@ -696,13 +706,15 @@ func performDiff(ctx context.Context, currentState, targetState *state.KongState
696706
shouldSkipDeletes := applyType == ApplyTypePartial
697707

698708
s, err := diff.NewSyncer(diff.SyncerOpts{
699-
CurrentState: currentState,
700-
TargetState: targetState,
701-
KongClient: client,
702-
StageDelaySec: delay,
703-
NoMaskValues: noMaskValues,
704-
IsKonnect: isKonnect,
705-
NoDeletes: shouldSkipDeletes,
709+
CurrentState: currentState,
710+
TargetState: targetState,
711+
KongClient: client,
712+
StageDelaySec: delay,
713+
NoMaskValues: noMaskValues,
714+
IsKonnect: isKonnect,
715+
NoDeletes: shouldSkipDeletes,
716+
SkipSchemaDefaults: isKonnect && skipDefaultsFill,
717+
SchemaRegistry: schemaRegistry,
706718
})
707719
if err != nil {
708720
return 0, err

cmd/common_konnect.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,10 @@ func authenticate(
5757
func GetKongClientForKonnectMode(
5858
ctx context.Context, konnectConfig *utils.KonnectConfig,
5959
) (*kong.Client, error) {
60-
httpClient, err := utils.HTTPClientWithTLSConfig(konnectConfig.TLSConfig)
60+
httpClient, err := utils.HTTPClientWithOpts(utils.HTTPClientOptions{
61+
Timeout: time.Duration(rootConfig.Timeout) * time.Second,
62+
TLSConfig: konnectConfig.TLSConfig,
63+
})
6164
if err != nil {
6265
return nil, err
6366
}
@@ -174,7 +177,12 @@ func dumpKonnectV2(ctx context.Context) error {
174177
func syncKonnect(ctx context.Context,
175178
filenames []string, dry bool, parallelism int,
176179
) error {
177-
httpClient := utils.HTTPClient()
180+
httpClient, err := utils.HTTPClientWithOpts(utils.HTTPClientOptions{
181+
Timeout: time.Duration(rootConfig.Timeout) * time.Second,
182+
})
183+
if err != nil {
184+
return err
185+
}
178186

179187
// read target file
180188
targetContent, err := file.GetContentFromFiles(filenames, false)

cmd/gateway_ping.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import (
44
"context"
55
"fmt"
66
"os"
7+
"time"
78

89
"github.com/kong/go-database-reconciler/pkg/utils"
910
"github.com/spf13/cobra"
@@ -56,7 +57,10 @@ func pingKonnect(ctx context.Context) error {
5657
return err
5758
}
5859
// get Konnect client
59-
httpClient, err := utils.HTTPClientWithTLSConfig(rootConfig.TLSConfig)
60+
httpClient, err := utils.HTTPClientWithOpts(utils.HTTPClientOptions{
61+
Timeout: time.Duration(rootConfig.Timeout) * time.Second,
62+
TLSConfig: rootConfig.TLSConfig,
63+
})
6064
if err != nil {
6165
return err
6266
}

cmd/konnect_dump.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package cmd
33
import (
44
"fmt"
55
"strings"
6+
"time"
67

78
"github.com/kong/go-database-reconciler/pkg/file"
89
"github.com/kong/go-database-reconciler/pkg/utils"
@@ -28,7 +29,12 @@ func newKonnectDumpCmd() *cobra.Command {
2829
configure Konnect.` + konnectAlphaState,
2930
Args: validateNoArgs,
3031
RunE: func(cmd *cobra.Command, _ []string) error {
31-
httpClient := utils.HTTPClient()
32+
httpClient, err := utils.HTTPClientWithOpts(utils.HTTPClientOptions{
33+
Timeout: time.Duration(rootConfig.Timeout) * time.Second,
34+
})
35+
if err != nil {
36+
return err
37+
}
3238
_ = sendAnalytics("konnect-dump", "", modeKonnect)
3339

3440
if yes, err := utils.ConfirmFileOverwrite(konnectDumpCmdKongStateFile, dumpCmdStateFormat, assumeYes); err != nil {

cmd/root.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ var (
3737

3838
konnectRuntimeGroup string
3939
konnectControlPlane string
40+
41+
skipDefaultsFill bool
4042
)
4143

4244
// NewRootCmd represents the base command when called without any subcommands
@@ -432,6 +434,8 @@ func initKonnectConfig() error {
432434
token = strings.TrimRight(token, "\n")
433435
}
434436

437+
skipDefaultsFill = viper.GetBool("skip-defaults-fill")
438+
435439
disableAnalytics = !viper.GetBool("analytics")
436440
konnectConfig.Email = viper.GetString("konnect-email")
437441
konnectConfig.Password = password

go.mod

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,19 @@ require (
1414
github.com/fatih/color v1.18.0
1515
github.com/google/go-cmp v0.7.0
1616
github.com/kong/go-apiops v0.2.2
17-
github.com/kong/go-database-reconciler v1.31.6
17+
github.com/kong/go-database-reconciler v1.32.0
1818
github.com/kong/go-kong v0.72.1
1919
github.com/mitchellh/go-homedir v1.1.0
2020
github.com/spf13/cobra v1.9.1
2121
github.com/spf13/pflag v1.0.10
2222
github.com/spf13/viper v1.20.1
2323
github.com/stretchr/testify v1.11.1
24-
golang.org/x/sync v0.18.0
24+
golang.org/x/sync v0.19.0
2525
k8s.io/api v0.35.1
2626
k8s.io/apiextensions-apiserver v0.33.1
2727
k8s.io/apimachinery v0.35.1
2828
k8s.io/client-go v0.35.1
29-
k8s.io/code-generator v0.33.3
29+
k8s.io/code-generator v0.35.1
3030
sigs.k8s.io/gateway-api v1.3.0
3131
sigs.k8s.io/yaml v1.6.0
3232
)
@@ -55,13 +55,13 @@ require (
5555
github.com/go-errors/errors v1.4.2 // indirect
5656
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
5757
github.com/google/btree v1.1.3 // indirect
58-
github.com/google/go-querystring v1.1.0 // indirect
58+
github.com/google/go-querystring v1.2.0 // indirect
5959
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
6060
github.com/google/uuid v1.6.0 // indirect
6161
github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect
6262
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect
6363
github.com/hashicorp/go-memdb v1.3.5 // indirect
64-
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
64+
github.com/hashicorp/go-retryablehttp v0.7.8 // indirect
6565
github.com/hashicorp/go-uuid v1.0.3 // indirect
6666
github.com/hexops/gotextdiff v1.0.3 // indirect
6767
github.com/imdario/mergo v0.3.16 // indirect
@@ -83,7 +83,7 @@ require (
8383
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
8484
github.com/pkg/errors v0.9.1 // indirect
8585
github.com/russross/blackfriday/v2 v2.1.0 // indirect
86-
github.com/samber/lo v1.50.0 // indirect
86+
github.com/samber/lo v1.52.0 // indirect
8787
github.com/sethvargo/go-password v0.3.1 // indirect
8888
github.com/shirou/gopsutil/v3 v3.24.5 // indirect
8989
github.com/sirupsen/logrus v1.9.3 // indirect
@@ -108,7 +108,7 @@ require (
108108
gopkg.in/yaml.v2 v2.4.0 // indirect
109109
k8s.io/cli-runtime v0.31.0 // indirect
110110
k8s.io/component-base v0.33.1 // indirect
111-
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f // indirect
111+
k8s.io/gengo/v2 v2.0.0-20250922181213-ec3ebc5fd46b // indirect
112112
k8s.io/kubectl v0.31.0 // indirect
113113
sigs.k8s.io/kind v0.24.0 // indirect
114114
sigs.k8s.io/kustomize/api v0.17.3 // indirect
@@ -193,8 +193,8 @@ require (
193193
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect
194194
golang.org/x/mod v0.29.0 // indirect
195195
golang.org/x/net v0.47.0 // indirect
196-
golang.org/x/sys v0.38.0 // indirect
197-
golang.org/x/term v0.37.0 // indirect
196+
golang.org/x/sys v0.41.0 // indirect
197+
golang.org/x/term v0.40.0 // indirect
198198
golang.org/x/text v0.31.0 // indirect
199199
golang.org/x/tools v0.38.0 // indirect
200200
google.golang.org/protobuf v1.36.8 // indirect

go.sum

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -177,13 +177,13 @@ github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw
177177
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
178178
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
179179
github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
180-
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
181180
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
182181
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
182+
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
183183
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
184184
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
185-
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
186-
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
185+
github.com/google/go-querystring v1.2.0 h1:yhqkPbu2/OH+V9BfpCVPZkNmUXhb2gBxJArfhIxNtP0=
186+
github.com/google/go-querystring v1.2.0/go.mod h1:8IFJqpSRITyJ8QhQ13bmbeMBDfmeEJZD5A0egEOmkqU=
187187
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
188188
github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
189189
github.com/google/pprof v0.0.0-20230207041349-798e818bf904/go.mod h1:uglQLonpP8qtYCYyzA+8c/9qtqgA3qsXGYqCPKARAFg=
@@ -216,8 +216,8 @@ github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJ
216216
github.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
217217
github.com/hashicorp/go-memdb v1.3.5 h1:b3taDMxCBCBVgyRrS1AZVHO14ubMYZB++QpNhBg+Nyo=
218218
github.com/hashicorp/go-memdb v1.3.5/go.mod h1:8IVKKBkVe+fxFgdFOYxzQQNjz+sWCyHCdIC/+5+Vy1Y=
219-
github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU=
220-
github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk=
219+
github.com/hashicorp/go-retryablehttp v0.7.8 h1:ylXZWnqa7Lhqpk0L1P1LzDtGcCR0rPVUrx/c8Unxc48=
220+
github.com/hashicorp/go-retryablehttp v0.7.8/go.mod h1:rjiScheydd+CxvumBsIrFKlx3iS0jrZ7LvzFGFmuKbw=
221221
github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
222222
github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8=
223223
github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
@@ -247,8 +247,8 @@ github.com/klauspost/cpuid/v2 v2.2.5 h1:0E5MSMDEoAulmXNFquVs//DdoomxaoTY1kUhbc/q
247247
github.com/klauspost/cpuid/v2 v2.2.5/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws=
248248
github.com/kong/go-apiops v0.2.2 h1:Owdcl/PxTdtciqyZKgPScVhTKHgY2b8dGIC1Bms8NpI=
249249
github.com/kong/go-apiops v0.2.2/go.mod h1:yPwbl3P2eQinVGAEA0d3legaYmzPJ+WtJf9fSeGF4b8=
250-
github.com/kong/go-database-reconciler v1.31.6 h1:Tfjh7NCp6mujfP53qCDOUrEyxw2ZN7h8LzFtKqd35xQ=
251-
github.com/kong/go-database-reconciler v1.31.6/go.mod h1:A6BBhnK1AQ7mQAsnLHoAitS62nJRGqUI8NbjC1aRGOc=
250+
github.com/kong/go-database-reconciler v1.32.0 h1:xjRBDBlNRWd+rxOJEOp9tvBBD2kBU3l37qd5NcsPZtI=
251+
github.com/kong/go-database-reconciler v1.32.0/go.mod h1:zdxuIftbmygObEnixiW3fNnWar+8KejqsfruhsV4juQ=
252252
github.com/kong/go-kong v0.72.1 h1:rQ69f3Wd0Fvc3JANkavo34vePqR4uZG/YQ2y5U7d2Po=
253253
github.com/kong/go-kong v0.72.1/go.mod h1:J0vGB3wsZ2i99zly1zTRe3v7rOKpkhQZRwbcTFP76qM=
254254
github.com/kong/go-slugify v1.0.0 h1:vCFAyf2sdoSlBtLcrmDWUFn0ohlpKiKvQfXZkO5vSKY=
@@ -374,8 +374,8 @@ github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf
374374
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
375375
github.com/sagikazarmark/locafero v0.7.0 h1:5MqpDsTGNDhY8sGp0Aowyf0qKsPrhewaLSsFaodPcyo=
376376
github.com/sagikazarmark/locafero v0.7.0/go.mod h1:2za3Cg5rMaTMoG/2Ulr9AwtFaIppKXTRYnozin4aB5k=
377-
github.com/samber/lo v1.50.0 h1:XrG0xOeHs+4FQ8gJR97zDz5uOFMW7OwFWiFVzqopKgY=
378-
github.com/samber/lo v1.50.0/go.mod h1:RjZyNk6WSnUFRKK6EyOhsRJMqft3G+pg7dCWHQCWvsc=
377+
github.com/samber/lo v1.52.0 h1:Rvi+3BFHES3A8meP33VPAxiBZX/Aws5RxrschYGjomw=
378+
github.com/samber/lo v1.52.0/go.mod h1:4+MXEGsJzbKGaUEQFKBq2xtfuznW9oz/WrgyzMzRoM0=
379379
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 h1:lZUw3E0/J3roVtGQ+SCrUrg3ON6NgVqpn3+iol9aGu4=
380380
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1/go.mod h1:uToXkOrWAZ6/Oc07xWQrPOhJotwFIyu2bBVN41fcDUY=
381381
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
@@ -537,8 +537,8 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ
537537
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
538538
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
539539
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
540-
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
541-
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
540+
golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4=
541+
golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
542542
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
543543
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
544544
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -570,16 +570,16 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
570570
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
571571
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
572572
golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
573-
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
574-
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
573+
golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k=
574+
golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
575575
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
576576
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
577577
golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
578578
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
579579
golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
580580
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
581-
golang.org/x/term v0.37.0 h1:8EGAD0qCmHYZg6J17DvsMy9/wJ7/D/4pV/wfnld5lTU=
582-
golang.org/x/term v0.37.0/go.mod h1:5pB4lxRNYYVZuTLmy8oR2BH8dflOR+IbTYFD8fi3254=
581+
golang.org/x/term v0.40.0 h1:36e4zGLqU4yhjlmxEaagx2KuYbJq3EwY8K943ZsHcvg=
582+
golang.org/x/term v0.40.0/go.mod h1:w2P8uVp06p2iyKKuvXIm7N/y0UCRt3UfJTfZ7oOpglM=
583583
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
584584
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
585585
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
@@ -604,8 +604,8 @@ golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc
604604
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
605605
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
606606
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
607-
golang.org/x/tools/go/expect v0.1.0-deprecated h1:jY2C5HGYR5lqex3gEniOQL0r7Dq5+VGVgY1nudX5lXY=
608-
golang.org/x/tools/go/expect v0.1.0-deprecated/go.mod h1:eihoPOH+FgIqa3FpoTwguz/bVUSGBlGQU67vpBeOrBY=
607+
golang.org/x/tools/go/expect v0.1.1-deprecated h1:jpBZDwmgPhXsKZC6WhL20P4b/wmnpsEAGHaNy0n/rJM=
608+
golang.org/x/tools/go/expect v0.1.1-deprecated/go.mod h1:eihoPOH+FgIqa3FpoTwguz/bVUSGBlGQU67vpBeOrBY=
609609
golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated h1:1h2MnaIAIXISqTFKdENegdpAgUXz6NrPEsbIeWaBRvM=
610610
golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated/go.mod h1:RVAQXBGNv1ib0J382/DPCRS/BPnsGebyM1Gj5VSDpG8=
611611
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@@ -677,12 +677,12 @@ k8s.io/cli-runtime v0.31.0 h1:V2Q1gj1u3/WfhD475HBQrIYsoryg/LrhhK4RwpN+DhA=
677677
k8s.io/cli-runtime v0.31.0/go.mod h1:vg3H94wsubuvWfSmStDbekvbla5vFGC+zLWqcf+bGDw=
678678
k8s.io/client-go v0.35.1 h1:+eSfZHwuo/I19PaSxqumjqZ9l5XiTEKbIaJ+j1wLcLM=
679679
k8s.io/client-go v0.35.1/go.mod h1:1p1KxDt3a0ruRfc/pG4qT/3oHmUj1AhSHEcxNSGg+OA=
680-
k8s.io/code-generator v0.33.3 h1:6+34LhYkIuQ/yn/E3qlpVqjQaP8smzCu4NE1A8b0LWs=
681-
k8s.io/code-generator v0.33.3/go.mod h1:6Y02+HQJYgNphv9z3wJB5w+sjYDIEBQW7sh62PkufvA=
680+
k8s.io/code-generator v0.35.1 h1:yLKR2la7Z9cWT5qmk67ayx8xXLM4RRKQMnC8YPvTWRI=
681+
k8s.io/code-generator v0.35.1/go.mod h1:F2Fhm7aA69tC/VkMXLDokdovltXEF026Tb9yfQXQWKg=
682682
k8s.io/component-base v0.33.1 h1:EoJ0xA+wr77T+G8p6T3l4efT2oNwbqBVKR71E0tBIaI=
683683
k8s.io/component-base v0.33.1/go.mod h1:guT/w/6piyPfTgq7gfvgetyXMIh10zuXA6cRRm3rDuY=
684-
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f h1:SLb+kxmzfA87x4E4brQzB33VBbT2+x7Zq9ROIHmGn9Q=
685-
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f/go.mod h1:EJykeLsmFC60UQbYJezXkEsG2FLrt0GPNkU5iK5GWxU=
684+
k8s.io/gengo/v2 v2.0.0-20250922181213-ec3ebc5fd46b h1:gMplByicHV/TJBizHd9aVEsTYoJBnnUAT5MHlTkbjhQ=
685+
k8s.io/gengo/v2 v2.0.0-20250922181213-ec3ebc5fd46b/go.mod h1:CgujABENc3KuTrcsdpGmrrASjtQsWCT7R99mEV4U/fM=
686686
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
687687
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
688688
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 h1:Y3gxNAuB0OBLImH611+UDZcmKS3g6CthxToOb37KgwE=

0 commit comments

Comments
 (0)