Skip to content

Commit e979820

Browse files
committed
cleanup gateways on exit
Change-Id: Id3978b11c99f9c037fd34a8377150a17fd178d33 create gateways using dynamic configuration Change-Id: I0c5dcf01463ba908b90e454c5be57fdb2e028d5e refactor gateway and envoy Change-Id: I30bb99651ece4178090aa81231f61592040b189c configure envoy control plane Change-Id: Ieda6d51e92ee7378e7a1a029960c0d1f364133ef create gateway Change-Id: I7e2d8ba74c5ad6ef0b6d2915e4fa61b2c6dd655a fix example gateway Change-Id: Ic99bf4bc2a357bc77ae273f7abfeb9d4f2637e09 fix linter errors Change-Id: I295f90814f642a7a2e1f5e5d23befc280c1f8fa4 fix examples Change-Id: I4fa958f14ed9c347d16c03435ca936d975217f12 add conformance gateway test Change-Id: Ic2816c9371e963e8f295e5574213ed0c8744f579 fix gateway creation Change-Id: If69343d87be030b1348a95d8c0563d6d784ed248 expose xds cache Change-Id: I5dde4c3fe59fe2f1d5d57893b0e121f9abfdf35e fix panic looking for httproute namespace Change-Id: I5c7b7b419a509ad70bc621e3dd3f74ce5fd607cd fix gateway cleanup Change-Id: I95224fd22d115c4abf2eea48f7ae61f0524c62c9 process all gateway logic in a single worker Change-Id: Ie228405370e5e90b7a030c03cd086a379818d36c process routes for gateway Change-Id: If9522e9446f7363a1a4d18dfcc9576ff0241ed93 reorganize code Change-Id: Iec3093b5cd52ff2c64b7ecb1d359843dcae8312c fix typo on gateway test Change-Id: If666da6854085fe1abd8d7b46f15d2890b8322ef add missing implmenetations flags Change-Id: Ifacc55d417934afdf3a33908b6aec7d317d67d0a fix gw class observed generation Change-Id: I6ca5fcef1ea7613b64165d81d55bf9922fe164bd set conditions Change-Id: I065470d6986fbe23ab053fbb77daa7f178981e9e remove workqueue Change-Id: I8085f88783dac5c19649d3a6bd57021e90dc80e2 reorganize code Change-Id: I930d9f9b5e292fa548a560189b54b3be487f273f fix status report Change-Id: I2d4e67ad6d90a71782c85dcb885720fafcaf21ba update crds Change-Id: Ifa577cbf3ff76ccea661311f4f525ed05f4a94df scaffolding for routes Change-Id: I3ca023216321668303eb5a35044af1f62d8fc540 add httproutes Change-Id: I25ceffb1871e0ca73106236fa0eb4770228f949d fix linter Change-Id: I761e550ef0e0eff4cafd02ad13ac9f378270561e fix tests Change-Id: Id336ba7dc75dec2fcf66fd93e3ef9c006fbec8e8 publish addresses Change-Id: I2ab9156410d042a871337306e35f1205d5534f36 tests Change-Id: I6b5c1d592566a697e5590fb7ab4b4e559c818aa7 add callbacks Change-Id: I83e05e0bb3397f96e32e2da987c57d9bd894445a remove vendor folder Change-Id: I76f64cbd32368587c8c428d2a5ca557ccb10bdf4 do not check snapshot consistency Change-Id: I9ee3b38b0b0fb702be05c994be349733f46278c7 decouple listener logic Change-Id: I98d5a291b85c8ad2e68a75d044ded69a7a379bc6 fix listener Change-Id: Ic698eaf68037442e37bc9598ef544e8d28844464 listener Change-Id: I3e68009a97adb2206f29a09f8ed74ad4e196ce9b go mod update Change-Id: I104e501bfd861ca426f3257ce8a8f10827ab8c65 bump docker 28 Change-Id: Ie0590ef63b9d551946593e780ccf6806704fb7b1
1 parent 960add6 commit e979820

File tree

797 files changed

+2874
-299228
lines changed

Some content is hidden

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

797 files changed

+2874
-299228
lines changed

.github/workflows/gateway.yml

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
name: gateway
2+
3+
on:
4+
push:
5+
pull_request:
6+
workflow_dispatch:
7+
8+
env:
9+
GO_VERSION: "1.24"
10+
K8S_VERSION: "v1.32.0"
11+
KIND_VERSION: "v0.27.0"
12+
KIND_CLUSTER_NAME: "kind-cloud"
13+
14+
jobs:
15+
gateway:
16+
name: gateway
17+
runs-on: ubuntu-latest
18+
timeout-minutes: 100
19+
env:
20+
JOB_NAME: "cloud-provider-kind-e2e-gateway"
21+
steps:
22+
- name: Set up Go
23+
uses: actions/setup-go@v5
24+
with:
25+
go-version: ${{ env.GO_VERSION }}
26+
id: go
27+
28+
- name: Check out code
29+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
30+
31+
- name: Enable ipv4 and ipv6 forwarding
32+
run: |
33+
sudo sysctl -w net.ipv6.conf.all.forwarding=1
34+
sudo sysctl -w net.ipv4.ip_forward=1
35+
36+
- name: Set up environment (download dependencies)
37+
run: |
38+
TMP_DIR=$(mktemp -d)
39+
# Test binaries
40+
git clone --depth 1 https://github.com/kubernetes-sigs/gateway-api.git ${TMP_DIR}
41+
cd ${TMP_DIR}
42+
go test ./conformance/ -c
43+
cd -
44+
sudo cp ${TMP_DIR}/conformance.test /usr/local/bin/conformance.test
45+
sudo chmod +x /usr/local/bin/conformance.test
46+
# kubectl
47+
curl -L https://dl.k8s.io/${{ env.K8S_VERSION }}/bin/linux/amd64/kubectl -o ${TMP_DIR}/kubectl
48+
# kind
49+
curl -Lo ${TMP_DIR}/kind https://kind.sigs.k8s.io/dl/${{ env.KIND_VERSION }}/kind-linux-amd64
50+
# Install
51+
sudo cp ${TMP_DIR}/kubectl /usr/local/bin/kubectl
52+
sudo cp ${TMP_DIR}/kind /usr/local/bin/kind
53+
sudo chmod +x /usr/local/bin/kubectl
54+
sudo chmod +x /usr/local/bin/kind
55+
# Create folder to store artifacts
56+
mkdir -p _artifacts
57+
58+
- name: Run cloud-provider-kind
59+
run: |
60+
make
61+
nohup bin/cloud-provider-kind -v 2 --enable-log-dumping --logs-dir ./_artifacts/loadbalancers > ./_artifacts/ccm-kind.log 2>&1 &
62+
63+
- name: Create multi node cluster
64+
run: |
65+
# create cluster
66+
cat <<EOF | /usr/local/bin/kind create cluster \
67+
--name ${{ env.KIND_CLUSTER_NAME}} \
68+
--image kindest/node:${{ env.K8S_VERSION }} \
69+
-v7 --wait 1m --retain --config=-
70+
kind: Cluster
71+
apiVersion: kind.x-k8s.io/v1alpha4
72+
nodes:
73+
- role: control-plane
74+
- role: worker
75+
- role: worker
76+
kubeadmConfigPatches:
77+
- |
78+
kind: ClusterConfiguration
79+
apiServer:
80+
extraArgs:
81+
cloud-provider: "external"
82+
v: "5"
83+
controllerManager:
84+
extraArgs:
85+
cloud-provider: "external"
86+
v: "5"
87+
---
88+
kind: InitConfiguration
89+
nodeRegistration:
90+
kubeletExtraArgs:
91+
cloud-provider: "external"
92+
v: "5"
93+
---
94+
kind: JoinConfiguration
95+
nodeRegistration:
96+
kubeletExtraArgs:
97+
cloud-provider: "external"
98+
v: "5"
99+
EOF
100+
/usr/local/bin/kind get kubeconfig --name ${{ env.KIND_CLUSTER_NAME}} > _artifacts/kubeconfig.conf
101+
102+
- name: Get Cluster status
103+
run: |
104+
/usr/local/bin/kubectl get nodes -o yaml
105+
/usr/local/bin/kubectl get pods -A -o wide
106+
# wait network is ready
107+
/usr/local/bin/kubectl wait --for=condition=ready pods --namespace=kube-system -l k8s-app=kube-dns --timeout=3m
108+
/usr/local/bin/kubectl get nodes -o wide
109+
/usr/local/bin/kubectl get pods -A
110+
111+
- name: Run tests
112+
run: |
113+
/usr/local/bin/conformance.test -test.run TestConformance \
114+
--kubeconfig=_artifacts/kubeconfig.conf \
115+
--organization=sigs.k8s.io \
116+
--project=cloud-provider-kind \
117+
--url=https://github.com/kubernetes-sigs/cloud-provider-kind \
118+
--version=test \
119+
--contact=antonio.ojea.garcia@gmail.com \
120+
--gateway-class=cloud-provider-kind \
121+
--supported-features=Gateway,HTTPRoute \
122+
--report-output=./_artifacts
123+
124+
- name: Export logs
125+
if: always()
126+
run: |
127+
/usr/local/bin/kind export logs --name ${{ env.KIND_CLUSTER_NAME}} ./_artifacts/logs
128+
cp ./_artifacts/ccm-kind.log ./_artifacts/logs
129+
cp ./_artifacts/loadbalancers/* ./_artifacts/logs
130+
131+
- name: Upload logs
132+
if: always()
133+
uses: actions/upload-artifact@v4
134+
with:
135+
name: kind-logs-${{ env.JOB_NAME }}-${{ github.run_id }}
136+
path: ./_artifacts

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@ ARG TARGETARCH
99
RUN GOARCH=$TARGETARCH make build
1010

1111
# build real cloud-provider-kind image
12-
FROM docker:25.0-cli
12+
FROM docker:28-cli
1313
COPY --from=0 --chown=root:root ./go/src/bin/cloud-provider-kind /bin/cloud-provider-kind
1414
ENTRYPOINT ["/bin/cloud-provider-kind"]

Makefile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ lint:
3030
update:
3131
go mod tidy
3232

33-
3433
# get image name from directory we're building
3534
IMAGE_NAME?=cloud-provider-kind
3635
# docker image registry, default to upstream

examples/gateway_httproute_simple.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ spec:
2727
apiVersion: apps/v1
2828
kind: Deployment
2929
metadata:
30-
name: MyApp
30+
name: myapp
3131
spec:
3232
selector:
3333
matchLabels:
@@ -39,7 +39,7 @@ spec:
3939
app: MyApp
4040
spec:
4141
containers:
42-
- name: MyApp
42+
- name: myapp
4343
image: registry.k8s.io/e2e-test-images/agnhost:2.39
4444
args:
4545
- netexec

go.mod

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@ toolchain go1.24.2
66

77
require (
88
github.com/envoyproxy/go-control-plane v0.13.4
9-
github.com/envoyproxy/go-control-plane/envoy v1.32.3
9+
github.com/envoyproxy/go-control-plane/envoy v1.32.4
1010
github.com/google/go-cmp v0.7.0
1111
github.com/lithammer/dedent v1.1.0
1212
github.com/pkg/errors v0.9.1
13-
google.golang.org/grpc v1.68.1
13+
google.golang.org/grpc v1.71.1
14+
google.golang.org/protobuf v1.36.6
1415
k8s.io/api v0.33.0
1516
k8s.io/apimachinery v0.33.0
1617
k8s.io/apiserver v0.33.0
@@ -20,7 +21,7 @@ require (
2021
k8s.io/controller-manager v0.33.0
2122
k8s.io/klog/v2 v2.130.1
2223
k8s.io/utils v0.0.0-20250502105355-0f33e8f1c979
23-
sigs.k8s.io/gateway-api v1.2.1
24+
sigs.k8s.io/gateway-api v1.3.0
2425
sigs.k8s.io/kind v0.27.0
2526
)
2627

@@ -31,11 +32,11 @@ require (
3132
github.com/beorn7/perks v1.0.1 // indirect
3233
github.com/blang/semver/v4 v4.0.0 // indirect
3334
github.com/cespare/xxhash/v2 v2.3.0 // indirect
34-
github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78 // indirect
35+
github.com/cncf/xds/go v0.0.0-20241223141626-cff3c89139a3 // indirect
3536
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
3637
github.com/emicklei/go-restful/v3 v3.12.1 // indirect
3738
github.com/envoyproxy/go-control-plane/ratelimit v0.1.0 // indirect
38-
github.com/envoyproxy/protoc-gen-validate v1.1.0 // indirect
39+
github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect
3940
github.com/evanphx/json-patch/v5 v5.9.11 // indirect
4041
github.com/fxamacker/cbor/v2 v2.8.0 // indirect
4142
github.com/go-logr/logr v1.4.2 // indirect

go.sum

Lines changed: 59 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM
1010
github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ=
1111
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
1212
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
13-
github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78 h1:QVw89YDxXxEe+l8gU8ETbOasdwEV+avkR75ZzsVV9WI=
14-
github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8=
13+
github.com/cncf/xds/go v0.0.0-20241223141626-cff3c89139a3 h1:boJj011Hh+874zpIySeApCX4GeOjPl9qhRF3QuIZq+Q=
14+
github.com/cncf/xds/go v0.0.0-20241223141626-cff3c89139a3/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8=
1515
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
1616
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
1717
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -21,18 +21,20 @@ github.com/emicklei/go-restful/v3 v3.12.1 h1:PJMDIM/ak7btuL8Ex0iYET9hxM3CI2sjZtz
2121
github.com/emicklei/go-restful/v3 v3.12.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
2222
github.com/envoyproxy/go-control-plane v0.13.4 h1:zEqyPVyku6IvWCFwux4x9RxkLOMUL+1vC9xUFv5l2/M=
2323
github.com/envoyproxy/go-control-plane v0.13.4/go.mod h1:kDfuBlDVsSj2MjrLEtRWtHlsWIFcGyB2RMO44Dc5GZA=
24-
github.com/envoyproxy/go-control-plane/envoy v1.32.3 h1:hVEaommgvzTjTd4xCaFd+kEQ2iYBtGxP6luyLrx6uOk=
25-
github.com/envoyproxy/go-control-plane/envoy v1.32.3/go.mod h1:F6hWupPfh75TBXGKA++MCT/CZHFq5r9/uwt/kQYkZfE=
24+
github.com/envoyproxy/go-control-plane/envoy v1.32.4 h1:jb83lalDRZSpPWW2Z7Mck/8kXZ5CQAFYVjQcdVIr83A=
25+
github.com/envoyproxy/go-control-plane/envoy v1.32.4/go.mod h1:Gzjc5k8JcJswLjAx1Zm+wSYE20UrLtt7JZMWiWQXQEw=
2626
github.com/envoyproxy/go-control-plane/ratelimit v0.1.0 h1:/G9QYbddjL25KvtKTv3an9lx6VBE2cnb8wp1vEGNYGI=
2727
github.com/envoyproxy/go-control-plane/ratelimit v0.1.0/go.mod h1:Wk+tMFAFbCXaJPzVVHnPgRKdUdwW/KdbRt94AzgRee4=
28-
github.com/envoyproxy/protoc-gen-validate v1.1.0 h1:tntQDh69XqOCOZsDz0lVJQez/2L6Uu2PdjCQwWCJ3bM=
29-
github.com/envoyproxy/protoc-gen-validate v1.1.0/go.mod h1:sXRDRVmzEbkM7CVcM06s9shE/m23dg3wzjl0UWqJ2q4=
28+
github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfUKS7KJ7spH3d86P8=
29+
github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2TmLfsJ31lvEjwamM4DxlWXU=
3030
github.com/evanphx/json-patch/v5 v5.9.11 h1:/8HVnzMq13/3x9TPvjG08wUGqBTmZBsCWzjTM0wiaDU=
3131
github.com/evanphx/json-patch/v5 v5.9.11/go.mod h1:3j+LviiESTElxA4p3EMKAB9HXj3/XEtnUf6OZxqIQTM=
3232
github.com/fxamacker/cbor/v2 v2.8.0 h1:fFtUGXUzXPHTIUdne5+zzMPTfffl3RD5qYnkY40vtxU=
3333
github.com/fxamacker/cbor/v2 v2.8.0/go.mod h1:vM4b+DJCtHn+zz7h3FFp/hDAI9WNWCsZj23V5ytsSxQ=
3434
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
3535
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
36+
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
37+
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
3638
github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ=
3739
github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg=
3840
github.com/go-openapi/jsonpointer v0.21.1 h1:whnzv/pNXtK2FbX/W9yJfRmE2gsmkfahjMKB0fZvcic=
@@ -131,10 +133,25 @@ github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
131133
github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
132134
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
133135
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
136+
<<<<<<< HEAD
134137
go.opentelemetry.io/otel v1.35.0 h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ=
135138
go.opentelemetry.io/otel v1.35.0/go.mod h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y=
136139
go.opentelemetry.io/otel/trace v1.35.0 h1:dPpEfJu1sDIqruz7BHFG3c7528f6ddfSWfFDVt/xgMs=
137140
go.opentelemetry.io/otel/trace v1.35.0/go.mod h1:WUk7DtFp1Aw2MkvqGdwiXYDZZNvA/1J8o6xRXLrIkyc=
141+
=======
142+
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
143+
go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
144+
go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY=
145+
go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI=
146+
go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ=
147+
go.opentelemetry.io/otel/metric v1.34.0/go.mod h1:CEDrp0fy2D0MvkXE+dPV7cMi8tWZwX3dmaIhwPOaqHE=
148+
go.opentelemetry.io/otel/sdk v1.34.0 h1:95zS4k/2GOy069d321O8jWgYsW3MzVV+KuSPKp7Wr1A=
149+
go.opentelemetry.io/otel/sdk v1.34.0/go.mod h1:0e/pNiaMAqaykJGKbi+tSjWfNNHMTxoC9qANsCzbyxU=
150+
go.opentelemetry.io/otel/sdk/metric v1.34.0 h1:5CeK9ujjbFVL5c1PhLuStg1wxA7vQv7ce1EK0Gyvahk=
151+
go.opentelemetry.io/otel/sdk/metric v1.34.0/go.mod h1:jQ/r8Ze28zRKoNRdkjCZxfs6YvBTG1+YIqyFVFYec5w=
152+
go.opentelemetry.io/otel/trace v1.34.0 h1:+ouXS2V8Rd4hp4580a8q23bg0azF2nI8cqLYnC8mh/k=
153+
go.opentelemetry.io/otel/trace v1.34.0/go.mod h1:Svm7lSjQD7kG7KJ/MUHPVXSDGz2OX4h0M2jHBhmSfRE=
154+
>>>>>>> 911d2a5 (cleanup gateways on exit)
138155
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
139156
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
140157
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
@@ -150,17 +167,25 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
150167
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
151168
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
152169
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
170+
<<<<<<< HEAD
153171
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
154172
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
155173
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
156174
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
175+
=======
176+
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
177+
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
178+
golang.org/x/oauth2 v0.27.0 h1:da9Vo7/tDv5RH/7nZDz1eMGS/q1Vv1N/7FCrBhI9I3M=
179+
golang.org/x/oauth2 v0.27.0/go.mod h1:onh5ek6nERTohokkhCD/y2cV4Do3fxFHFuAejCkRWT8=
180+
>>>>>>> 911d2a5 (cleanup gateways on exit)
157181
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
158182
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
159183
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
160184
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
161185
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
162186
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
163187
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
188+
<<<<<<< HEAD
164189
golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
165190
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
166191
golang.org/x/term v0.32.0 h1:DR4lr0TjUs3epypdhTOkMmuF5CDFJ/8pOnbzMZPQ7bg=
@@ -171,22 +196,43 @@ golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
171196
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
172197
golang.org/x/time v0.11.0 h1:/bpjEDfN9tkoN/ryeYHnv5hcMlc8ncjMcM4XBk5NWV0=
173198
golang.org/x/time v0.11.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
199+
=======
200+
golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20=
201+
golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
202+
golang.org/x/term v0.31.0 h1:erwDkOK1Msy6offm1mOgvspSkslFnIGsFnxOKoufg3o=
203+
golang.org/x/term v0.31.0/go.mod h1:R4BeIy7D95HzImkxGkTW1UQTtP54tio2RyHz7PwK0aw=
204+
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
205+
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
206+
golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
207+
golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
208+
golang.org/x/time v0.10.0 h1:3usCWA8tQn0L8+hFJQNgzpWbd89begxN66o1Ojdn5L4=
209+
golang.org/x/time v0.10.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
210+
>>>>>>> 911d2a5 (cleanup gateways on exit)
174211
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
175212
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
176213
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
177214
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
178-
golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ=
179-
golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0=
215+
golang.org/x/tools v0.30.0 h1:BgcpHewrV5AUp2G9MebG4XPFI1E2W41zU1SaqVA9vJY=
216+
golang.org/x/tools v0.30.0/go.mod h1:c347cR/OJfw5TI+GfX7RUPNMdDRRbjvYTS0jPyvsVtY=
180217
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
181218
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
182219
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
183220
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
221+
<<<<<<< HEAD
184222
google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576 h1:CkkIfIt50+lT6NHAVoRYEyAvQGFM7xEwXUUywFvEb3Q=
185223
google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576/go.mod h1:1R3kvZ1dtP3+4p4d3G8uJ8rFk/fWlScl38vanWACI08=
186224
google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576 h1:8ZmaLZE4XWrtU3MyClkYqqtl6Oegr3235h7jxsDyqCY=
187225
google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576/go.mod h1:5uTbfoYQed2U9p3KIj2/Zzm02PYhndfdmML0qC3q3FU=
188226
google.golang.org/grpc v1.68.1 h1:oI5oTa11+ng8r8XMMN7jAOmWfPZWbYpCFaMUTACxkM0=
189227
google.golang.org/grpc v1.68.1/go.mod h1:+q1XYFJjShcqn0QZHvCyeR4CXPA+llXIeUIfIe00waw=
228+
=======
229+
google.golang.org/genproto/googleapis/api v0.0.0-20250106144421-5f5ef82da422 h1:GVIKPyP/kLIyVOgOnTwFOrvQaQUzOzGMCxgFUOEmm24=
230+
google.golang.org/genproto/googleapis/api v0.0.0-20250106144421-5f5ef82da422/go.mod h1:b6h1vNKhxaSoEI+5jc3PJUCustfli/mRab7295pY7rw=
231+
google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f h1:OxYkA3wjPsZyBylwymxSHa7ViiW1Sml4ToBrncvFehI=
232+
google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f/go.mod h1:+2Yz8+CLJbIfL9z73EW45avw8Lmge3xVElCP9zEKi50=
233+
google.golang.org/grpc v1.71.1 h1:ffsFWr7ygTUscGPI0KKK6TLrGz0476KUvvsbqWK0rPI=
234+
google.golang.org/grpc v1.71.1/go.mod h1:H0GRtasmQOh9LkFoCPDu3ZrwUtD1YGE+b2vYBYd/8Ec=
235+
>>>>>>> 911d2a5 (cleanup gateways on exit)
190236
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
191237
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
192238
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
@@ -220,8 +266,13 @@ k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff h1:/usPimJzUKKu+m+TE36gUy
220266
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff/go.mod h1:5jIi+8yX4RIb8wk3XwBo5Pq2ccx4FP10ohkbSKCZoK8=
221267
k8s.io/utils v0.0.0-20250502105355-0f33e8f1c979 h1:jgJW5IePPXLGB8e/1wvd0Ich9QE97RvvF3a8J3fP/Lg=
222268
k8s.io/utils v0.0.0-20250502105355-0f33e8f1c979/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
269+
<<<<<<< HEAD
223270
sigs.k8s.io/gateway-api v1.2.1 h1:fZZ/+RyRb+Y5tGkwxFKuYuSRQHu9dZtbjenblleOLHM=
224271
sigs.k8s.io/gateway-api v1.2.1/go.mod h1:EpNfEXNjiYfUJypf0eZ0P5iXA9ekSGWaS1WgPaM42X0=
272+
=======
273+
sigs.k8s.io/gateway-api v1.3.0 h1:q6okN+/UKDATola4JY7zXzx40WO4VISk7i9DIfOvr9M=
274+
sigs.k8s.io/gateway-api v1.3.0/go.mod h1:d8NV8nJbaRbEKem+5IuxkL8gJGOZ+FJ+NvOIltV8gDk=
275+
>>>>>>> 911d2a5 (cleanup gateways on exit)
225276
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE=
226277
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg=
227278
sigs.k8s.io/kind v0.27.0 h1:PQ3f0iAWNIj66LYkZ1ivhEg/+Zb6UPMbO+qVei/INZA=

pkg/constants/constants.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,6 @@ const (
1010
NodeCCMLabelKey = "io.x-k8s.cloud-provider-kind.cluster"
1111
// LoadBalancerNameLabelKey clustername/serviceNamespace/serviceName
1212
LoadBalancerNameLabelKey = "io.x-k8s.cloud-provider-kind.loadbalancer.name"
13+
// GatewayNameLabelKey clustername/gatewayNamespace/gatewayName
14+
GatewayNameLabelKey = "io.x-k8s.cloud-provider-kind.gateway.name"
1315
)

0 commit comments

Comments
 (0)