Skip to content

Commit aa8860a

Browse files
Merge pull request #1163 from candita/NE-1716-Test-GWAPI1.0.0-OSSM2.6
NE-1716: Bump Gateway API to v1.0.0 and OSSM to v2.6
2 parents 1ee3995 + 92649ef commit aa8860a

File tree

80 files changed

+6145
-2506
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+6145
-2506
lines changed

go.mod

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ require (
3434
github.com/summerwind/h2spec v0.0.0-20200804131034-70ac22940108
3535
github.com/tcnksm/go-httpstat v0.2.1-0.20191008022543-e866bb274419
3636
go.uber.org/zap v1.26.0
37-
golang.org/x/exp v0.0.0-20220827204233-334a2380cb91
37+
golang.org/x/exp v0.0.0-20231006140011-7918f672742d
3838
golang.org/x/time v0.3.0
3939
google.golang.org/api v0.126.0
4040
google.golang.org/grpc v1.58.3
@@ -47,7 +47,7 @@ require (
4747
k8s.io/client-go v12.0.0+incompatible
4848
k8s.io/utils v0.0.0-20230726121419-3b25d923346b
4949
sigs.k8s.io/controller-runtime v0.18.4
50-
sigs.k8s.io/gateway-api v0.5.1-0.20220921185115-ee7a83814203
50+
sigs.k8s.io/gateway-api v1.0.0
5151
)
5252

5353
require (
@@ -68,16 +68,16 @@ require (
6868
github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4 // indirect
6969
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
7070
github.com/envoyproxy/protoc-gen-validate v1.0.2 // indirect
71-
github.com/evanphx/json-patch v5.6.0+incompatible // indirect
71+
github.com/evanphx/json-patch v5.7.0+incompatible // indirect
7272
github.com/evanphx/json-patch/v5 v5.9.0 // indirect
7373
github.com/fatih/color v1.16.0 // indirect
7474
github.com/fsnotify/fsnotify v1.7.0 // indirect
7575
github.com/gabriel-vasile/mimetype v1.4.3 // indirect
7676
github.com/go-openapi/errors v0.21.0 // indirect
77-
github.com/go-openapi/jsonpointer v0.19.6 // indirect
77+
github.com/go-openapi/jsonpointer v0.20.0 // indirect
7878
github.com/go-openapi/jsonreference v0.20.2 // indirect
7979
github.com/go-openapi/strfmt v0.22.1 // indirect
80-
github.com/go-openapi/swag v0.22.3 // indirect
80+
github.com/go-openapi/swag v0.22.4 // indirect
8181
github.com/go-playground/locales v0.14.1 // indirect
8282
github.com/go-playground/universal-translator v0.18.1 // indirect
8383
github.com/go-playground/validator/v10 v10.19.0 // indirect
@@ -95,7 +95,7 @@ require (
9595
github.com/gorilla/websocket v1.5.0 // indirect
9696
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
9797
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
98-
github.com/imdario/mergo v0.3.12 // indirect
98+
github.com/imdario/mergo v0.3.16 // indirect
9999
github.com/inconshreveable/mousetrap v1.1.0 // indirect
100100
github.com/jmespath/go-jmespath v0.4.0 // indirect
101101
github.com/josharian/intern v1.0.0 // indirect
@@ -129,14 +129,14 @@ require (
129129
go.uber.org/multierr v1.11.0 // indirect
130130
golang.org/x/crypto v0.21.0 // indirect
131131
golang.org/x/net v0.23.0 // indirect
132-
golang.org/x/oauth2 v0.12.0 // indirect
132+
golang.org/x/oauth2 v0.13.0 // indirect
133133
golang.org/x/sync v0.6.0 // indirect
134134
golang.org/x/sys v0.20.0 // indirect
135135
golang.org/x/term v0.18.0 // indirect
136136
golang.org/x/text v0.14.0 // indirect
137137
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
138138
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
139-
google.golang.org/appengine v1.6.7 // indirect
139+
google.golang.org/appengine v1.6.8 // indirect
140140
google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d // indirect
141141
google.golang.org/protobuf v1.33.0 // indirect
142142
gopkg.in/inf.v0 v0.9.1 // indirect

go.sum

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -934,8 +934,8 @@ github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLi
934934
github.com/evanphx/json-patch v4.5.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
935935
github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
936936
github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
937-
github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U=
938-
github.com/evanphx/json-patch v5.6.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
937+
github.com/evanphx/json-patch v5.7.0+incompatible h1:vgGkfT/9f8zE6tvSCe74nfpAVDQ2tG6yudJd8LBksgI=
938+
github.com/evanphx/json-patch v5.7.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
939939
github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0/FOJfg=
940940
github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ=
941941
github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d/go.mod h1:ZZMPRZwes7CROmyNKgQzC3XPs6L/G2EJLHddWejkmf4=
@@ -1018,8 +1018,9 @@ github.com/go-openapi/jsonpointer v0.17.2/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwds
10181018
github.com/go-openapi/jsonpointer v0.18.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M=
10191019
github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg=
10201020
github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
1021-
github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE=
10221021
github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs=
1022+
github.com/go-openapi/jsonpointer v0.20.0 h1:ESKJdU9ASRfaPNOPRx12IUyA1vn3R9GiE3KYD14BXdQ=
1023+
github.com/go-openapi/jsonpointer v0.20.0/go.mod h1:6PGzBjjIIumbLYysB73Klnms1mwnU4G3YHOECG3CedA=
10231024
github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg=
10241025
github.com/go-openapi/jsonreference v0.17.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I=
10251026
github.com/go-openapi/jsonreference v0.17.2/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I=
@@ -1060,8 +1061,9 @@ github.com/go-openapi/swag v0.17.2/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/
10601061
github.com/go-openapi/swag v0.18.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg=
10611062
github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
10621063
github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
1063-
github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g=
10641064
github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14=
1065+
github.com/go-openapi/swag v0.22.4 h1:QLMzNJnMGPRNDCbySlcj1x01tzU8/9LTTL9hZZZogBU=
1066+
github.com/go-openapi/swag v0.22.4/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14=
10651067
github.com/go-openapi/validate v0.17.2/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+MYsct2VUrAJ4=
10661068
github.com/go-openapi/validate v0.18.0/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+MYsct2VUrAJ4=
10671069
github.com/go-openapi/validate v0.19.2/go.mod h1:1tRCw7m3jtI8eNWEEliiAqUIcBztB2KDnRCRMUi7GTA=
@@ -1390,8 +1392,8 @@ github.com/imdario/mergo v0.3.6/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJ
13901392
github.com/imdario/mergo v0.3.7/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
13911393
github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
13921394
github.com/imdario/mergo v0.3.9/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
1393-
github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU=
1394-
github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA=
1395+
github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4=
1396+
github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY=
13951397
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
13961398
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
13971399
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
@@ -2059,8 +2061,9 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0
20592061
golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4=
20602062
golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM=
20612063
golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU=
2062-
golang.org/x/exp v0.0.0-20220827204233-334a2380cb91 h1:tnebWN09GYg9OLPss1KXj8txwZc6X6uMr6VFdcGNbHw=
20632064
golang.org/x/exp v0.0.0-20220827204233-334a2380cb91/go.mod h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE=
2065+
golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI=
2066+
golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo=
20642067
golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs=
20652068
golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
20662069
golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
@@ -2241,8 +2244,8 @@ golang.org/x/oauth2 v0.6.0/go.mod h1:ycmewcwgD4Rpr3eZJLSB4Kyyljb3qDh40vJ8STE5HKw
22412244
golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4=
22422245
golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE=
22432246
golang.org/x/oauth2 v0.10.0/go.mod h1:kTpgurOux7LqtuxjuyZa4Gj2gdezIt/jQtGnNFfypQI=
2244-
golang.org/x/oauth2 v0.12.0 h1:smVPGxink+n1ZI5pkQa8y6fZT0RW0MgCO5bFpepy4B4=
2245-
golang.org/x/oauth2 v0.12.0/go.mod h1:A74bZ3aGXgCY0qaIC9Ahg6Lglin4AMAco8cIv9baba4=
2247+
golang.org/x/oauth2 v0.13.0 h1:jDDenyj+WgFtmV3zYVoi8aE2BwtXFLWOA67ZfNWftiY=
2248+
golang.org/x/oauth2 v0.13.0/go.mod h1:/JMhi4ZRXAf4HG9LiNmxvk+45+96RUlVThiH8FzNBn0=
22462249
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
22472250
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
22482251
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -2658,8 +2661,9 @@ google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7
26582661
google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0=
26592662
google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
26602663
google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
2661-
google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c=
26622664
google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
2665+
google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM=
2666+
google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds=
26632667
google.golang.org/cloud v0.0.0-20151119220103-975617b05ea8/go.mod h1:0H1ncTHf11KCFhTc/+EFRbzSCOZx+VUbRMk55Yv5MYk=
26642668
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
26652669
google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
@@ -3123,8 +3127,8 @@ sigs.k8s.io/controller-runtime v0.18.4/go.mod h1:TVoGrfdpbA9VRFaRnKgk9P5/atA0pMw
31233127
sigs.k8s.io/controller-tools v0.2.4/go.mod h1:m/ztfQNocGYBgTTCmFdnK94uVvgxeZeE3LtJvd/jIzA=
31243128
sigs.k8s.io/controller-tools v0.3.0/go.mod h1:enhtKGfxZD1GFEoMgP8Fdbu+uKQ/cq1/WGJhdVChfvI=
31253129
sigs.k8s.io/controller-tools v0.4.1/go.mod h1:G9rHdZMVlBDocIxGkK3jHLWqcTMNvveypYJwrvYKjWU=
3126-
sigs.k8s.io/gateway-api v0.5.1-0.20220921185115-ee7a83814203 h1:t53lCjyZa7bsj1vZbAboYAH0p0OpqdGpGeM30IZIew8=
3127-
sigs.k8s.io/gateway-api v0.5.1-0.20220921185115-ee7a83814203/go.mod h1:x0AP6gugkFV8fC/oTlnOMU0pnmuzIR8LfIPRVUjxSqA=
3130+
sigs.k8s.io/gateway-api v1.0.0 h1:iPTStSv41+d9p0xFydll6d7f7MOBGuqXM6p2/zVYMAs=
3131+
sigs.k8s.io/gateway-api v1.0.0/go.mod h1:4cUgr0Lnp5FZ0Cdq8FdRwCvpiWws7LVhLHGIudLlf4c=
31283132
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo=
31293133
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0=
31303134
sigs.k8s.io/kube-storage-version-migrator v0.0.6-0.20230721195810-5c8923c5ff96 h1:PFWFSkpArPNJxFX4ZKWAk9NSeRoZaXschn+ULa4xVek=

pkg/manifests/assets/gateway-api/gateway.networking.k8s.io_gatewayclasses.yaml

Lines changed: 29 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ apiVersion: apiextensions.k8s.io/v1
22
kind: CustomResourceDefinition
33
metadata:
44
annotations:
5-
api-approved.kubernetes.io: https://github.com/kubernetes-sigs/gateway-api/pull/1538
6-
gateway.networking.k8s.io/bundle-version: v0.6.2
5+
api-approved.kubernetes.io: https://github.com/kubernetes-sigs/gateway-api/pull/2466
6+
gateway.networking.k8s.io/bundle-version: v1.0.0
77
gateway.networking.k8s.io/channel: standard
88
creationTimestamp: null
99
name: gatewayclasses.gateway.networking.k8s.io
@@ -34,10 +34,7 @@ spec:
3434
name: Description
3535
priority: 1
3636
type: string
37-
deprecated: true
38-
deprecationWarning: The v1alpha2 version of GatewayClass has been deprecated and
39-
will be removed in a future release of the API. Please upgrade to v1beta1.
40-
name: v1alpha2
37+
name: v1
4138
schema:
4239
openAPIV3Schema:
4340
description: "GatewayClass describes a class of Gateways available to the
@@ -49,7 +46,7 @@ spec:
4946
to GatewayClass or associated parameters. If implementations choose to propagate
5047
GatewayClass changes to existing Gateways, that MUST be clearly documented
5148
by the implementation. \n Whenever one or more Gateways are using a GatewayClass,
52-
implementations MUST add the `gateway-exists-finalizer.gateway.networking.k8s.io`
49+
implementations SHOULD add the `gateway-exists-finalizer.gateway.networking.k8s.io`
5350
finalizer on the associated GatewayClass. This ensures that a GatewayClass
5451
associated with a Gateway is not deleted while in use. \n GatewayClass is
5552
a Cluster level resource."
@@ -78,6 +75,9 @@ spec:
7875
minLength: 1
7976
pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*\/[A-Za-z0-9\/\-._~%!$&'()*+,;=:]+$
8077
type: string
78+
x-kubernetes-validations:
79+
- message: Value is immutable
80+
rule: self == oldSelf
8181
description:
8282
description: Description helps describe a GatewayClass with more details.
8383
maxLength: 64
@@ -132,7 +132,9 @@ spec:
132132
reason: Waiting
133133
status: Unknown
134134
type: Accepted
135-
description: Status defines the current state of GatewayClass.
135+
description: "Status defines the current state of GatewayClass. \n Implementations
136+
MUST populate status on all GatewayClass resources which specify their
137+
controller name."
136138
properties:
137139
conditions:
138140
default:
@@ -148,14 +150,12 @@ spec:
148150
description: "Condition contains details for one aspect of the current
149151
state of this API Resource. --- This struct is intended for direct
150152
use as an array at the field path .status.conditions. For example,
151-
\n \ttype FooStatus struct{ \t // Represents the observations
152-
of a foo's current state. \t // Known .status.conditions.type
153-
are: \"Available\", \"Progressing\", and \"Degraded\" \t //
154-
+patchMergeKey=type \t // +patchStrategy=merge \t // +listType=map
155-
\t // +listMapKey=type \t Conditions []metav1.Condition
153+
\n type FooStatus struct{ // Represents the observations of a
154+
foo's current state. // Known .status.conditions.type are: \"Available\",
155+
\"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
156+
// +listType=map // +listMapKey=type Conditions []metav1.Condition
156157
`json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
157-
protobuf:\"bytes,1,rep,name=conditions\"` \n \t // other fields
158-
\t}"
158+
protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
159159
properties:
160160
lastTransitionTime:
161161
description: lastTransitionTime is the last time the condition
@@ -251,7 +251,7 @@ spec:
251251
to GatewayClass or associated parameters. If implementations choose to propagate
252252
GatewayClass changes to existing Gateways, that MUST be clearly documented
253253
by the implementation. \n Whenever one or more Gateways are using a GatewayClass,
254-
implementations MUST add the `gateway-exists-finalizer.gateway.networking.k8s.io`
254+
implementations SHOULD add the `gateway-exists-finalizer.gateway.networking.k8s.io`
255255
finalizer on the associated GatewayClass. This ensures that a GatewayClass
256256
associated with a Gateway is not deleted while in use. \n GatewayClass is
257257
a Cluster level resource."
@@ -280,6 +280,9 @@ spec:
280280
minLength: 1
281281
pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*\/[A-Za-z0-9\/\-._~%!$&'()*+,;=:]+$
282282
type: string
283+
x-kubernetes-validations:
284+
- message: Value is immutable
285+
rule: self == oldSelf
283286
description:
284287
description: Description helps describe a GatewayClass with more details.
285288
maxLength: 64
@@ -334,7 +337,9 @@ spec:
334337
reason: Waiting
335338
status: Unknown
336339
type: Accepted
337-
description: Status defines the current state of GatewayClass.
340+
description: "Status defines the current state of GatewayClass. \n Implementations
341+
MUST populate status on all GatewayClass resources which specify their
342+
controller name."
338343
properties:
339344
conditions:
340345
default:
@@ -350,14 +355,12 @@ spec:
350355
description: "Condition contains details for one aspect of the current
351356
state of this API Resource. --- This struct is intended for direct
352357
use as an array at the field path .status.conditions. For example,
353-
\n \ttype FooStatus struct{ \t // Represents the observations
354-
of a foo's current state. \t // Known .status.conditions.type
355-
are: \"Available\", \"Progressing\", and \"Degraded\" \t //
356-
+patchMergeKey=type \t // +patchStrategy=merge \t // +listType=map
357-
\t // +listMapKey=type \t Conditions []metav1.Condition
358+
\n type FooStatus struct{ // Represents the observations of a
359+
foo's current state. // Known .status.conditions.type are: \"Available\",
360+
\"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
361+
// +listType=map // +listMapKey=type Conditions []metav1.Condition
358362
`json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
359-
protobuf:\"bytes,1,rep,name=conditions\"` \n \t // other fields
360-
\t}"
363+
protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
361364
properties:
362365
lastTransitionTime:
363366
description: lastTransitionTime is the last time the condition
@@ -431,5 +434,5 @@ status:
431434
acceptedNames:
432435
kind: ""
433436
plural: ""
434-
conditions: []
435-
storedVersions: []
437+
conditions: null
438+
storedVersions: null

0 commit comments

Comments
 (0)