Skip to content

Commit 9880663

Browse files
authored
Dep: Bumps Gateway API to v1.4.0 (#1691)
* Bumps Gateway API Dep to v1.4.0 Signed-off-by: Daneyon Hansen <[email protected]> * Updates deprecated funcs Signed-off-by: Daneyon Hansen <[email protected]> * Bumps controller-tools to match go.mod Signed-off-by: Daneyon Hansen <[email protected]> * Ignores type comp in EPP reconciler tests Signed-off-by: Daneyon Hansen <[email protected]> --------- Signed-off-by: Daneyon Hansen <[email protected]>
1 parent 9705c1f commit 9880663

File tree

5 files changed

+94
-57
lines changed

5 files changed

+94
-57
lines changed

conformance/tests/gateway_following_epp_routing.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ func assertTrafficOnlyReachesToExpectedPods(t *testing.T, suite *suite.Conforman
174174
if err != nil {
175175
return fmt.Errorf("failed to roundtrip request: %w", err)
176176
}
177-
if err := gwhttp.CompareRequest(t, &req, cReq, cRes, expected); err != nil {
177+
if err := gwhttp.CompareRoundTrip(t, &req, cReq, cRes, expected); err != nil {
178178
return fmt.Errorf("response expectation failed for request: %w", err)
179179
}
180180

conformance/utils/traffic/traffic.go

Lines changed: 45 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -169,24 +169,56 @@ func waitForConvergeToExpected(
169169
tlog.Logf(t, "Request passed")
170170
}
171171

172-
// CompareRequestWithWildcardStatus compares requests with wildcard status code support.
173-
// It treats a single-digit expected code (e.g., 4) as a class wildcard (4xx),
174-
// while standard 3-digit codes are matched exactly.
175-
func CompareRequestWithWildcardStatus(t *testing.T, req *roundtripper.Request, cReq *roundtripper.CapturedRequest, cRes *roundtripper.CapturedResponse, expected gwhttp.ExpectedResponse) error {
176-
if expected.Response.StatusCode < 1 || expected.Response.StatusCode >= 100 {
177-
return gwhttp.CompareRequest(t, req, cReq, cRes, expected)
172+
// CompareRequestWithWildcardStatus compares requests allowing single-digit
173+
// status "classes" (e.g. 5 => any 5xx) via ExpectedResponse.Response.StatusCodes.
174+
// If no class wildcards are present, it defers to CompareRoundTrip.
175+
func CompareRequestWithWildcardStatus(
176+
t *testing.T,
177+
req *roundtripper.Request,
178+
cReq *roundtripper.CapturedRequest,
179+
cRes *roundtripper.CapturedResponse,
180+
expected gwhttp.ExpectedResponse,
181+
) error {
182+
// Separate specific status codes (>=100) from wildcard classes (1..9).
183+
var wildcardClasses []int
184+
var specificCodes []int
185+
seenClass := map[int]struct{}{}
186+
seenCode := map[int]struct{}{}
187+
188+
for _, sc := range expected.Response.StatusCodes {
189+
switch {
190+
case sc >= 100:
191+
if _, ok := seenCode[sc]; !ok {
192+
specificCodes = append(specificCodes, sc)
193+
seenCode[sc] = struct{}{}
194+
}
195+
case sc >= 1 && sc <= 9:
196+
if _, ok := seenClass[sc]; !ok {
197+
wildcardClasses = append(wildcardClasses, sc)
198+
seenClass[sc] = struct{}{}
199+
}
200+
}
178201
}
179202

180-
expectedClass := expected.Response.StatusCode
203+
// No wildcard classes? Defer to standard comparator.
204+
if len(wildcardClasses) == 0 {
205+
return gwhttp.CompareRoundTrip(t, req, cReq, cRes, expected)
206+
}
207+
208+
// If the concrete status matches any wildcard class, materialize it and compare.
181209
actualClass := cRes.StatusCode / 100
182-
if expectedClass != actualClass {
183-
return fmt.Errorf("expected status code class %dxx, but got %d", expectedClass, cRes.StatusCode)
210+
for _, wc := range wildcardClasses {
211+
if actualClass == wc {
212+
modified := expected
213+
// Keep any specific codes that were provided, but ensure the actual status is allowed.
214+
modified.Response.StatusCodes = append(append([]int(nil), specificCodes...), cRes.StatusCode)
215+
return gwhttp.CompareRoundTrip(t, req, cReq, cRes, modified)
216+
}
184217
}
185218

186-
// StatusCode Class matches; update status code on a copy to allow the standard comparator to pass.
187-
modifiedExpected := expected
188-
modifiedExpected.Response.StatusCode = cRes.StatusCode
189-
return gwhttp.CompareRequest(t, req, cReq, cRes, modifiedExpected)
219+
// Wildcards were provided but none matched the actual class—fail clearly.
220+
return fmt.Errorf("expected status code class to be one of %vxx, got %d",
221+
wildcardClasses, cRes.StatusCode)
190222
}
191223

192224
// TODO: https://github.com/kubernetes-sigs/gateway-api-inference-extension/issues/1031

go.mod

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,11 @@ require (
2828
k8s.io/client-go v0.34.1
2929
k8s.io/code-generator v0.34.1
3030
k8s.io/component-base v0.34.1
31-
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397
32-
sigs.k8s.io/controller-runtime v0.21.0
31+
k8s.io/utils v0.0.0-20250820121507-0af2bda4dd1d
32+
sigs.k8s.io/controller-runtime v0.22.1
33+
// Update the CONTROLLER_TOOLS_VERSION in Makefile when bumping controller-tools.
3334
sigs.k8s.io/controller-tools v0.19.0
34-
sigs.k8s.io/gateway-api v1.3.0
35+
sigs.k8s.io/gateway-api v1.4.0
3536
sigs.k8s.io/structured-merge-diff/v6 v6.3.0
3637
sigs.k8s.io/yaml v1.6.0
3738
)
@@ -49,17 +50,17 @@ require (
4950
github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 // indirect
5051
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
5152
github.com/dennwc/varint v1.0.0 // indirect
52-
github.com/emicklei/go-restful/v3 v3.12.2 // indirect
53+
github.com/emicklei/go-restful/v3 v3.13.0 // indirect
5354
github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect
5455
github.com/evanphx/json-patch/v5 v5.9.11 // indirect
5556
github.com/felixge/httpsnoop v1.0.4 // indirect
5657
github.com/fsnotify/fsnotify v1.9.0 // indirect
5758
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
5859
github.com/go-logr/stdr v1.2.2 // indirect
5960
github.com/go-logr/zapr v1.3.0 // indirect
60-
github.com/go-openapi/jsonpointer v0.21.0 // indirect
61+
github.com/go-openapi/jsonpointer v0.21.2 // indirect
6162
github.com/go-openapi/jsonreference v0.21.0 // indirect
62-
github.com/go-openapi/swag v0.23.0 // indirect
63+
github.com/go-openapi/swag v0.23.1 // indirect
6364
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
6465
github.com/gobuffalo/flect v1.0.3 // indirect
6566
github.com/goccy/go-yaml v1.18.0 // indirect
@@ -77,18 +78,17 @@ require (
7778
github.com/josharian/intern v1.0.0 // indirect
7879
github.com/json-iterator/go v1.1.12 // indirect
7980
github.com/kylelemons/godebug v1.1.0 // indirect
80-
github.com/mailru/easyjson v0.7.7 // indirect
81+
github.com/mailru/easyjson v0.9.0 // indirect
8182
github.com/mitchellh/copystructure v1.2.0 // indirect
8283
github.com/mitchellh/reflectwalk v1.0.2 // indirect
8384
github.com/moby/spdystream v0.5.0 // indirect
8485
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
8586
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
8687
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
8788
github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect
88-
github.com/pkg/errors v0.9.1 // indirect
8989
github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect
9090
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
91-
github.com/prometheus/procfs v0.16.1 // indirect
91+
github.com/prometheus/procfs v0.17.0 // indirect
9292
github.com/spf13/cobra v1.9.1 // indirect
9393
github.com/spf13/pflag v1.0.7 // indirect
9494
github.com/stoewer/go-strcase v1.3.0 // indirect
@@ -116,19 +116,18 @@ require (
116116
golang.org/x/text v0.29.0 // indirect
117117
golang.org/x/time v0.12.0 // indirect
118118
golang.org/x/tools v0.37.0 // indirect
119-
golang.org/x/tools/go/expect v0.1.1-deprecated // indirect
120119
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
121120
google.golang.org/genproto/googleapis/api v0.0.0-20250804133106-a7a43d27e69b // indirect
122-
google.golang.org/genproto/googleapis/rpc v0.0.0-20250804133106-a7a43d27e69b // indirect
123-
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
121+
google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1 // indirect
122+
gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect
124123
gopkg.in/inf.v0 v0.9.1 // indirect
125124
gopkg.in/yaml.v2 v2.4.0 // indirect
126125
gopkg.in/yaml.v3 v3.0.1 // indirect
127126
k8s.io/apiserver v0.34.1 // indirect
128-
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f // indirect
127+
k8s.io/gengo/v2 v2.0.0-20250820003526-c297c0c1eb9d // indirect
129128
k8s.io/klog/v2 v2.130.1 // indirect
130-
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b // indirect
129+
k8s.io/kube-openapi v0.0.0-20250814151709-d7b6acb124c3 // indirect
131130
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2 // indirect
132-
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
131+
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect
133132
sigs.k8s.io/randfill v1.0.0 // indirect
134133
)

go.sum

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ github.com/dennwc/varint v1.0.0 h1:kGNFFSSw8ToIy3obO/kKr8U9GZYUAxQEVuix4zfDWzE=
7575
github.com/dennwc/varint v1.0.0/go.mod h1:hnItb35rvZvJrbTALZtY/iQfDs48JKRG1RPpgziApxA=
7676
github.com/elastic/crd-ref-docs v0.2.0 h1:U17MyGX71j4qfKTvYxbR4qZGoA1hc2thy7kseGYmP+o=
7777
github.com/elastic/crd-ref-docs v0.2.0/go.mod h1:0bklkJhTG7nC6AVsdDi0wt5bGoqvzdZSzMMQkilZ6XM=
78-
github.com/emicklei/go-restful/v3 v3.12.2 h1:DhwDP0vY3k8ZzE0RunuJy8GhNpPL6zqLkDf9B/a0/xU=
79-
github.com/emicklei/go-restful/v3 v3.12.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
78+
github.com/emicklei/go-restful/v3 v3.13.0 h1:C4Bl2xDndpU6nJ4bc1jXd+uTmYPVUwkD6bFY/oTyCes=
79+
github.com/emicklei/go-restful/v3 v3.13.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
8080
github.com/envoyproxy/go-control-plane/envoy v1.35.0 h1:ixjkELDE+ru6idPxcHLj8LBVc2bFP7iBytj353BoHUo=
8181
github.com/envoyproxy/go-control-plane/envoy v1.35.0/go.mod h1:09qwbGVuSWWAyN5t/b3iyVfz5+z8QWGrzkoqm/8SbEs=
8282
github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfUKS7KJ7spH3d86P8=
@@ -98,12 +98,12 @@ github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
9898
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
9999
github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ=
100100
github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg=
101-
github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ=
102-
github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY=
101+
github.com/go-openapi/jsonpointer v0.21.2 h1:AqQaNADVwq/VnkCmQg6ogE+M3FOsKTytwges0JdwVuA=
102+
github.com/go-openapi/jsonpointer v0.21.2/go.mod h1:50I1STOfbY1ycR8jGz8DaMeLCdXiI6aDteEdRNNzpdk=
103103
github.com/go-openapi/jsonreference v0.21.0 h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF2+tg1TRrwQ=
104104
github.com/go-openapi/jsonreference v0.21.0/go.mod h1:LmZmgsrTkVg9LG4EaHeY8cBDslNPMo06cago5JNLkm4=
105-
github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE=
106-
github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ=
105+
github.com/go-openapi/swag v0.23.1 h1:lpsStH0n2ittzTnbaSloVZLuB5+fvSY/+hnagBjSNZU=
106+
github.com/go-openapi/swag v0.23.1/go.mod h1:STZs8TbRvEQQKUA+JZNAm3EWlgaOBGpyFDqQnDHMef0=
107107
github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
108108
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
109109
github.com/gobuffalo/flect v1.0.3 h1:xeWBM2nui+qnVvNM4S3foBhCAL2XgPU+a7FdpelbTq4=
@@ -169,8 +169,8 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
169169
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
170170
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
171171
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
172-
github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0=
173-
github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
172+
github.com/mailru/easyjson v0.9.0 h1:PrnmzHw7262yW8sTBwxi1PdJA3Iw/EKBa8psRf7d9a4=
173+
github.com/mailru/easyjson v0.9.0/go.mod h1:1+xMtQp2MRNVL/V1bOzuP3aP8VNwRW55fQUto+XFtTU=
174174
github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
175175
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
176176
github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ=
@@ -217,8 +217,8 @@ github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNw
217217
github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
218218
github.com/prometheus/common v0.66.1 h1:h5E0h5/Y8niHc5DlaLlWLArTQI7tMrsfQjHV+d9ZoGs=
219219
github.com/prometheus/common v0.66.1/go.mod h1:gcaUsgf3KfRSwHY4dIMXLPV0K/Wg1oZ8+SbZk/HH/dA=
220-
github.com/prometheus/procfs v0.16.1 h1:hZ15bTNuirocR6u0JZ6BAHHmwS1p8B4P6MRqxtzMyRg=
221-
github.com/prometheus/procfs v0.16.1/go.mod h1:teAbpZRB1iIAJYREa1LsoWUXykVXA1KlTmWl8x/U+Is=
220+
github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0=
221+
github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
222222
github.com/prometheus/prometheus v0.306.0 h1:Q0Pvz/ZKS6vVWCa1VSgNyNJlEe8hxdRlKklFg7SRhNw=
223223
github.com/prometheus/prometheus v0.306.0/go.mod h1:7hMSGyZHt0dcmZ5r4kFPJ/vxPQU99N5/BGwSPDxeZrQ=
224224
github.com/prometheus/sigv4 v0.2.0 h1:qDFKnHYFswJxdzGeRP63c4HlH3Vbn1Yf/Ao2zabtVXk=
@@ -341,17 +341,17 @@ google.golang.org/api v0.239.0 h1:2hZKUnFZEy81eugPs4e2XzIJ5SOwQg0G82bpXD65Puo=
341341
google.golang.org/api v0.239.0/go.mod h1:cOVEm2TpdAGHL2z+UwyS+kmlGr3bVWQQ6sYEqkKje50=
342342
google.golang.org/genproto/googleapis/api v0.0.0-20250804133106-a7a43d27e69b h1:ULiyYQ0FdsJhwwZUwbaXpZF5yUE3h+RA+gxvBu37ucc=
343343
google.golang.org/genproto/googleapis/api v0.0.0-20250804133106-a7a43d27e69b/go.mod h1:oDOGiMSXHL4sDTJvFvIB9nRQCGdLP1o/iVaqQK8zB+M=
344-
google.golang.org/genproto/googleapis/rpc v0.0.0-20250804133106-a7a43d27e69b h1:zPKJod4w6F1+nRGDI9ubnXYhU9NSWoFAijkHkUXeTK8=
345-
google.golang.org/genproto/googleapis/rpc v0.0.0-20250804133106-a7a43d27e69b/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
344+
google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1 h1:pmJpJEvT846VzausCQ5d7KreSROcDqmO388w5YbnltA=
345+
google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1/go.mod h1:GmFNa4BdJZ2a8G+wCe9Bg3wwThLrJun751XstdJt5Og=
346346
google.golang.org/grpc v1.76.0 h1:UnVkv1+uMLYXoIz6o7chp59WfQUYA2ex/BXQ9rHZu7A=
347347
google.golang.org/grpc v1.76.0/go.mod h1:Ju12QI8M6iQJtbcsV+awF5a4hfJMLi4X0JLo94ULZ6c=
348348
google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE=
349349
google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
350350
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
351351
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
352352
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
353-
gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4=
354-
gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M=
353+
gopkg.in/evanphx/json-patch.v4 v4.13.0 h1:czT3CmqEaQ1aanPc5SdlgQrrEIb8w/wwCvWWnfEbYzo=
354+
gopkg.in/evanphx/json-patch.v4 v4.13.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M=
355355
gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
356356
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
357357
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=
@@ -375,24 +375,24 @@ k8s.io/code-generator v0.34.1 h1:WpphT26E+j7tEgIUfFr5WfbJrktCGzB3JoJH9149xYc=
375375
k8s.io/code-generator v0.34.1/go.mod h1:DeWjekbDnJWRwpw3s0Jat87c+e0TgkxoR4ar608yqvg=
376376
k8s.io/component-base v0.34.1 h1:v7xFgG+ONhytZNFpIz5/kecwD+sUhVE6HU7qQUiRM4A=
377377
k8s.io/component-base v0.34.1/go.mod h1:mknCpLlTSKHzAQJJnnHVKqjxR7gBeHRv0rPXA7gdtQ0=
378-
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f h1:SLb+kxmzfA87x4E4brQzB33VBbT2+x7Zq9ROIHmGn9Q=
379-
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f/go.mod h1:EJykeLsmFC60UQbYJezXkEsG2FLrt0GPNkU5iK5GWxU=
378+
k8s.io/gengo/v2 v2.0.0-20250820003526-c297c0c1eb9d h1:qUrYOinhdAUL0xxhA4gPqogPBaS9nIq2l2kTb6pmeB0=
379+
k8s.io/gengo/v2 v2.0.0-20250820003526-c297c0c1eb9d/go.mod h1:EJykeLsmFC60UQbYJezXkEsG2FLrt0GPNkU5iK5GWxU=
380380
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
381381
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
382-
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b h1:MloQ9/bdJyIu9lb1PzujOPolHyvO06MXG5TUIj2mNAA=
383-
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b/go.mod h1:UZ2yyWbFTpuhSbFhv24aGNOdoRdJZgsIObGBUaYVsts=
384-
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 h1:hwvWFiBzdWw1FhfY1FooPn3kzWuJ8tmbZBHi4zVsl1Y=
385-
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
382+
k8s.io/kube-openapi v0.0.0-20250814151709-d7b6acb124c3 h1:liMHz39T5dJO1aOKHLvwaCjDbf07wVh6yaUlTpunnkE=
383+
k8s.io/kube-openapi v0.0.0-20250814151709-d7b6acb124c3/go.mod h1:UZ2yyWbFTpuhSbFhv24aGNOdoRdJZgsIObGBUaYVsts=
384+
k8s.io/utils v0.0.0-20250820121507-0af2bda4dd1d h1:wAhiDyZ4Tdtt7e46e9M5ZSAJ/MnPGPs+Ki1gHw4w1R0=
385+
k8s.io/utils v0.0.0-20250820121507-0af2bda4dd1d/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
386386
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2 h1:jpcvIRr3GLoUoEKRkHKSmGjxb6lWwrBlJsXc+eUYQHM=
387387
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw=
388-
sigs.k8s.io/controller-runtime v0.21.0 h1:CYfjpEuicjUecRk+KAeyYh+ouUBn4llGyDYytIGcJS8=
389-
sigs.k8s.io/controller-runtime v0.21.0/go.mod h1:OSg14+F65eWqIu4DceX7k/+QRAbTTvxeQSNSOQpukWM=
388+
sigs.k8s.io/controller-runtime v0.22.1 h1:Ah1T7I+0A7ize291nJZdS1CabF/lB4E++WizgV24Eqg=
389+
sigs.k8s.io/controller-runtime v0.22.1/go.mod h1:FwiwRjkRPbiN+zp2QRp7wlTCzbUXxZ/D4OzuQUDwBHY=
390390
sigs.k8s.io/controller-tools v0.19.0 h1:OU7jrPPiZusryu6YK0jYSjPqg8Vhf8cAzluP9XGI5uk=
391391
sigs.k8s.io/controller-tools v0.19.0/go.mod h1:y5HY/iNDFkmFla2CfQoVb2AQXMsBk4ad84iR1PLANB0=
392-
sigs.k8s.io/gateway-api v1.3.0 h1:q6okN+/UKDATola4JY7zXzx40WO4VISk7i9DIfOvr9M=
393-
sigs.k8s.io/gateway-api v1.3.0/go.mod h1:d8NV8nJbaRbEKem+5IuxkL8gJGOZ+FJ+NvOIltV8gDk=
394-
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE=
395-
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg=
392+
sigs.k8s.io/gateway-api v1.4.0 h1:ZwlNM6zOHq0h3WUX2gfByPs2yAEsy/EenYJB78jpQfQ=
393+
sigs.k8s.io/gateway-api v1.4.0/go.mod h1:AR5RSqciWP98OPckEjOjh2XJhAe2Na4LHyXD2FUY7Qk=
394+
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 h1:IpInykpT6ceI+QxKBbEflcR5EXP7sU1kvOlxwZh5txg=
395+
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg=
396396
sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU=
397397
sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
398398
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 h1:jTijUJbW353oVOd9oTlifJqOGEkUw2jB/fXCbTiQEco=

pkg/epp/controller/inferencepool_reconciler_test.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
"github.com/google/go-cmp/cmp"
2525
"github.com/google/go-cmp/cmp/cmpopts"
2626
corev1 "k8s.io/api/core/v1"
27+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2728
"k8s.io/apimachinery/pkg/runtime"
2829
"k8s.io/apimachinery/pkg/runtime/schema"
2930
"k8s.io/apimachinery/pkg/types"
@@ -180,7 +181,9 @@ type diffStoreParams struct {
180181

181182
func diffStore(datastore datastore.Datastore, params diffStoreParams) string {
182183
gotPool, _ := datastore.PoolGet()
183-
if diff := cmp.Diff(params.wantPool, gotPool); diff != "" {
184+
// controller-runtime fake client may not populate TypeMeta (APIVersion/Kind).
185+
// Ignore it when comparing pools.
186+
if diff := cmp.Diff(params.wantPool, gotPool, cmpopts.IgnoreTypes(metav1.TypeMeta{})); diff != "" {
184187
return "pool:" + diff
185188
}
186189

@@ -333,7 +336,10 @@ func xDiffStore(t *testing.T, datastore datastore.Datastore, params xDiffStorePa
333336
if err != nil {
334337
t.Fatalf("failed to convert InferencePool to XInferencePool: %v", err)
335338
}
336-
if diff := cmp.Diff(params.wantPool, gotXPool); diff != "" {
339+
340+
// controller-runtime fake client may not populate TypeMeta (APIVersion/Kind).
341+
// Ignore it when comparing pools.
342+
if diff := cmp.Diff(params.wantPool, gotXPool, cmpopts.IgnoreTypes(metav1.TypeMeta{})); diff != "" {
337343
return "pool:" + diff
338344
}
339345

0 commit comments

Comments
 (0)