Skip to content

Commit 2acfb54

Browse files
author
shiftstack-merge-bot
committed
2 parents 5319094 + f791105 commit 2acfb54

35 files changed

+8789
-2925
lines changed

.github/workflows/pr-dependabot.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@ jobs:
1919
runs-on: ubuntu-latest
2020
steps:
2121
- name: Check out code into the Go module directory
22-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # tag=v4.2.2
22+
uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # tag=v5.0.1
2323
- name: Calculate go version
2424
id: vars
2525
run: echo "go_version=$(make go-version)" >> $GITHUB_OUTPUT
2626
- name: Set up Go
27-
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # tag=v5.5.0
27+
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # tag=v6.0.0
2828
with:
2929
go-version: ${{ steps.vars.outputs.go_version }}
30-
- uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # tag=v4.2.3
30+
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # tag=v4.3.0
3131
name: Restore go cache
3232
with:
3333
path: |

.github/workflows/release.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ jobs:
1717
- name: Set env
1818
run: echo "RELEASE_TAG=${GITHUB_REF:10}" >> $GITHUB_ENV
1919
- name: checkout code
20-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # tag=v4.2.2
20+
uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # tag=v5.0.1
2121
with:
2222
fetch-depth: 0
2323
- name: Calculate go version
2424
run: echo "go_version=$(make go-version)" >> $GITHUB_ENV
2525
- name: Set up Go
26-
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # tag=v5.5.0
26+
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # tag=v6.0.0
2727
with:
2828
go-version: ${{ env.go_version }}
2929
- name: generate release artifacts
@@ -37,7 +37,7 @@ jobs:
3737
env:
3838
GH_TOKEN: ${{ github.token }}
3939
- name: Release
40-
uses: softprops/action-gh-release@da05d552573ad5aba039eaac05058a918a7bf631 # tag=v2.2.2
40+
uses: softprops/action-gh-release@5be0e66d93ac7ed76da52eca8bb058f665c3a5fe # tag=v2.4.2
4141
with:
4242
draft: true
4343
files: out/*

.github/workflows/security-scan.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ jobs:
1818
runs-on: ubuntu-latest
1919
steps:
2020
- name: Check out code
21-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # tag=v4.2.2
21+
uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # tag=v5.0.1
2222
with:
2323
ref: ${{ matrix.branch }}
2424
- name: Calculate go version
2525
id: vars
2626
run: echo "go_version=$(make go-version)" >> $GITHUB_OUTPUT
2727
- name: Set up Go
28-
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # tag=v5.5.0
28+
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # tag=v6.0.0
2929
with:
3030
go-version: ${{ steps.vars.outputs.go_version }}
3131
- name: Run verify security target

Dockerfile

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
# Build the manager binary
1616
ARG GO_VERSION
17-
FROM golang:${GO_VERSION} AS builder
17+
FROM golang:${GO_VERSION:-1.24.9} AS builder
1818
WORKDIR /workspace
1919

2020
# Run this with docker build --build_arg goproxy=$(go env GOPROXY) to override the goproxy
@@ -28,7 +28,7 @@ COPY go.sum go.sum
2828
# Cache deps before building and copying source so that we don't need to re-download as much
2929
# and so that source changes don't invalidate our downloaded layer
3030
RUN --mount=type=cache,target=/go/pkg/mod \
31-
go mod download
31+
go mod download
3232

3333
# Copy the sources
3434
COPY ./ ./
@@ -40,10 +40,10 @@ ARG ldflags
4040

4141
# Do not force rebuild of up-to-date packages (do not use -a) and use the compiler cache folder
4242
RUN --mount=type=cache,target=/root/.cache/go-build \
43-
--mount=type=cache,target=/go/pkg/mod \
44-
CGO_ENABLED=0 GOOS=linux GOARCH=${ARCH} \
45-
go build -ldflags "${ldflags} -extldflags '-static'" \
46-
-o manager ${package}
43+
--mount=type=cache,target=/go/pkg/mod \
44+
CGO_ENABLED=0 GOOS=linux GOARCH=${ARCH} \
45+
go build -ldflags "${ldflags} -extldflags '-static'" \
46+
-o manager ${package}
4747

4848
# Production image
4949
FROM gcr.io/distroless/static:nonroot

Makefile

Lines changed: 68 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ unexport GOPATH
2727
TRACE ?= 0
2828

2929
# Go
30-
GO_VERSION ?= 1.23.8
30+
GO_VERSION ?= 1.24.9
3131

3232
# Directories.
3333
ARTIFACTS ?= $(REPO_ROOT)/_artifacts
@@ -69,6 +69,11 @@ GOLANGCI_LINT := $(TOOLS_BIN_DIR)/golangci-lint
6969
GOTESTSUM := $(TOOLS_BIN_DIR)/gotestsum
7070
KUSTOMIZE := $(TOOLS_BIN_DIR)/kustomize
7171
MOCKGEN := $(TOOLS_BIN_DIR)/mockgen
72+
OPENAPI_GEN := $(TOOLS_BIN_DIR)/openapi-gen
73+
APPLYCONFIGURATION_GEN := $(TOOLS_BIN_DIR)/applyconfiguration-gen
74+
CLIENT_GEN := $(TOOLS_BIN_DIR)/client-gen
75+
LISTER_GEN := $(TOOLS_BIN_DIR)/lister-gen
76+
INFORMER_GEN := $(TOOLS_BIN_DIR)/informer-gen
7277
RELEASE_NOTES := $(TOOLS_BIN_DIR)/release-notes
7378
SETUP_ENVTEST := $(TOOLS_BIN_DIR)/setup-envtest
7479
GEN_CRD_API_REFERENCE_DOCS := $(TOOLS_BIN_DIR)/gen-crd-api-reference-docs
@@ -317,8 +322,66 @@ generate-controller-gen: $(CONTROLLER_GEN)
317322
object:headerFile=./hack/boilerplate/boilerplate.generatego.txt
318323

319324
.PHONY: generate-codegen
320-
generate-codegen: generate-controller-gen
321-
./hack/update-codegen.sh
325+
generate-codegen: generate-controller-gen $(OPENAPI_GEN) $(APPLYCONFIGURATION_GEN) $(CLIENT_GEN) $(LISTER_GEN) $(INFORMER_GEN)
326+
@echo "** Generating OpenAPI definitions **"
327+
# The package list includes:
328+
# - CAPO's own API packages (v1alpha1, v1alpha7, v1beta1) that have // +k8s:openapi-gen= markers
329+
# - Dependency packages from CAPI and k8s.io that are referenced by CAPO's APIs
330+
# - Base k8s.io/apimachinery packages
331+
$(OPENAPI_GEN) \
332+
--go-header-file=./hack/boilerplate.go.txt \
333+
--output-file=zz_generated.openapi.go \
334+
--output-dir=./cmd/models-schema \
335+
--output-pkg=main \
336+
--report-filename=./api_violations.report \
337+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha1 \
338+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha7 \
339+
sigs.k8s.io/cluster-api-provider-openstack/api/v1beta1 \
340+
sigs.k8s.io/cluster-api/api/v1beta1 \
341+
k8s.io/api/core/v1 \
342+
k8s.io/apimachinery/pkg/apis/meta/v1 \
343+
k8s.io/apimachinery/pkg/runtime \
344+
k8s.io/apimachinery/pkg/version
345+
@echo "** Generating openapi.json **"
346+
go run ./cmd/models-schema | jq > ./openapi.json
347+
@echo "** Generating applyconfiguration code **"
348+
$(APPLYCONFIGURATION_GEN) \
349+
--go-header-file=./hack/boilerplate.go.txt \
350+
--output-dir=./pkg/generated/applyconfiguration \
351+
--output-pkg=sigs.k8s.io/cluster-api-provider-openstack/pkg/generated/applyconfiguration \
352+
--openapi-schema=./openapi.json \
353+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha1 \
354+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha7 \
355+
sigs.k8s.io/cluster-api-provider-openstack/api/v1beta1
356+
@echo "** Generating clientset code **"
357+
$(CLIENT_GEN) \
358+
--go-header-file=./hack/boilerplate.go.txt \
359+
--output-dir=./pkg/generated/clientset \
360+
--output-pkg=sigs.k8s.io/cluster-api-provider-openstack/pkg/generated/clientset \
361+
--clientset-name=clientset \
362+
--input-base=sigs.k8s.io/cluster-api-provider-openstack \
363+
--apply-configuration-package=sigs.k8s.io/cluster-api-provider-openstack/pkg/generated/applyconfiguration \
364+
--input=api/v1alpha1 \
365+
--input=api/v1alpha7 \
366+
--input=api/v1beta1
367+
@echo "** Generating lister code **"
368+
$(LISTER_GEN) \
369+
--go-header-file=./hack/boilerplate.go.txt \
370+
--output-dir=./pkg/generated/listers \
371+
--output-pkg=sigs.k8s.io/cluster-api-provider-openstack/pkg/generated/listers \
372+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha1 \
373+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha7 \
374+
sigs.k8s.io/cluster-api-provider-openstack/api/v1beta1
375+
@echo "** Generating informer code **"
376+
$(INFORMER_GEN) \
377+
--go-header-file=./hack/boilerplate.go.txt \
378+
--output-dir=./pkg/generated/informers \
379+
--output-pkg=sigs.k8s.io/cluster-api-provider-openstack/pkg/generated/informers \
380+
--versioned-clientset-package=sigs.k8s.io/cluster-api-provider-openstack/pkg/generated/clientset/clientset \
381+
--listers-package=sigs.k8s.io/cluster-api-provider-openstack/pkg/generated/listers \
382+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha1 \
383+
sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha7 \
384+
sigs.k8s.io/cluster-api-provider-openstack/api/v1beta1
322385

323386
.PHONY: generate-conversion-gen
324387
generate-conversion-gen: $(CONVERSION_GEN)
@@ -517,6 +580,8 @@ templates/cluster-template-%.yaml: kustomize/v1beta1/% $(KUSTOMIZE) FORCE
517580
.PHONY: release-templates
518581
release-templates: $(RELEASE_DIR) templates ## Generate release templates
519582
cp templates/cluster-template*.yaml $(RELEASE_DIR)/
583+
cp templates/clusterclass*.yaml $(RELEASE_DIR)/
584+
cp templates/image-template*.yaml $(RELEASE_DIR)/
520585

521586
IMAGE_PATCH_DIR := $(ARTIFACTS)/image-patch
522587

OWNERS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,5 @@ emeritus_approvers:
2121
- chrischdi
2222
- tobiasgiese
2323
- seanschneeweiss
24+
- jichenjc
25+
- mdbooth

OWNERS_ALIASES

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,5 @@ aliases:
2121
cluster-api-openstack-maintainers:
2222
- emilienm
2323
- lentzi90
24-
- mdbooth
2524
cluster-api-openstack-reviewers:
26-
cluster-api-openstack-emeritus-maintainers:
27-
- jichenjc
25+
- smoshiur1237

cloudbuild.yaml

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,19 @@ options:
44
substitution_option: ALLOW_LOOSE
55
machineType: 'N1_HIGHCPU_8'
66
steps:
7-
- name: 'gcr.io/k8s-staging-test-infra/gcb-docker-gcloud:v20241229-5dc092c636'
8-
entrypoint: make
9-
env:
10-
- DOCKER_CLI_EXPERIMENTAL=enabled
11-
- TAG=$_GIT_TAG
12-
- PULL_BASE_REF=$_PULL_BASE_REF
13-
- DOCKER_BUILDKIT=1
14-
args:
15-
- release-staging
7+
# To check if the image can handle the build, you can try it like this:
8+
# docker run --rm -it -v $(pwd):/workspace gcr.io/k8s-staging-test-infra/gcb-docker-gcloud:${TAG}
9+
# make clean # make sure we have something to build
10+
# make staging-manifests
11+
- name: 'gcr.io/k8s-staging-test-infra/gcb-docker-gcloud:v20250116-2a05ea7e3d'
12+
entrypoint: make
13+
env:
14+
- DOCKER_CLI_EXPERIMENTAL=enabled
15+
- TAG=$_GIT_TAG
16+
- PULL_BASE_REF=$_PULL_BASE_REF
17+
- DOCKER_BUILDKIT=1
18+
args:
19+
- release-staging
1620
substitutions:
1721
# _GIT_TAG will be filled with a git-based tag for the image, of the form vYYYYMMDD-hash, and
1822
# can be used as a substitution

docs/book/src/development/development.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ This document explains how to develop Cluster API Provider OpenStack (CAPO).
3838
Note that CAPO depends on ORC. No matter how you choose to work, you will need to deploy ORC in order to make CAPO functional:
3939

4040
```bash
41-
kubectl apply -f https://github.com/k-orc/openstack-resource-controller/releases/download/v1.0.0/install.yaml
41+
kubectl apply -f https://github.com/k-orc/openstack-resource-controller/releases/latest/download/install.yaml
4242
```
4343

4444
TL;DR: Here is a short version for how to develop with Tilt:
@@ -58,11 +58,12 @@ export RESOURCE_TYPE=...
5858
make tilt-up
5959
# Back in CAPO repo
6060
# Install ORC
61-
kubectl apply -f https://github.com/k-orc/openstack-resource-controller/releases/download/v1.0.0/install.yaml
61+
kubectl apply -f https://github.com/k-orc/openstack-resource-controller/releases/latest/download/install.yaml
6262
# Create secret with clouds.yaml (the file is created by create_devstack.sh)
6363
kubectl create secret generic dev-test-cloud-config --from-file=clouds.yaml
6464
# Add images to use in the tests
65-
clusterctl generate yaml --from templates/images-template.yaml | kubectl apply -f -
65+
clusterctl generate yaml --from templates/image-template-node.yaml | kubectl apply -f -
66+
clusterctl generate yaml --from templates/image-template-bastion.yaml | kubectl apply -f -
6667
```
6768

6869
At this point, you should be able to apply the `dev-test` ClusterClass and start creating/deleting `development` clusters through the Tilt UI.
@@ -95,10 +96,11 @@ After generating `infrastructure-components.yaml`, replace the `us.gcr.io/k8s-ar
9596
## Automatically Adding Images to OpenStack
9697

9798
Before you can create a Cluster, you will need a suitable image in OpenStack.
98-
There is a convenient template available in `templates/images-template.yaml` for this purpose.
99+
There are convenient templates available in `templates/image-template-*.yaml` for this purpose.
100+
For example:
99101

100102
```bash
101-
clusterctl generate yaml --from templates/images-template.yaml | kubectl apply -f -
103+
clusterctl generate yaml --from templates/image-template-node.yaml | kubectl apply -f -
102104
```
103105

104106
## Testing Cluster Creation using the 'dev-test' ClusterClass with Tilt

go.mod

Lines changed: 35 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -8,40 +8,40 @@ require (
88
github.com/google/go-cmp v0.7.0
99
github.com/google/gofuzz v1.2.0
1010
github.com/google/uuid v1.6.0
11-
github.com/gophercloud/gophercloud/v2 v2.7.0
11+
github.com/gophercloud/gophercloud/v2 v2.9.0
1212
github.com/gophercloud/utils/v2 v2.0.0-20241209100706-e3a3b7c07d26
1313
github.com/hashicorp/go-version v1.7.0
1414
github.com/k-orc/openstack-resource-controller v1.0.2
15-
github.com/onsi/ginkgo/v2 v2.23.4
16-
github.com/onsi/gomega v1.37.0
17-
github.com/prometheus/client_golang v1.22.0
18-
github.com/spf13/pflag v1.0.6
19-
go.uber.org/mock v0.5.2
20-
golang.org/x/crypto v0.39.0
21-
golang.org/x/text v0.26.0
15+
github.com/onsi/ginkgo/v2 v2.27.2
16+
github.com/onsi/gomega v1.38.2
17+
github.com/prometheus/client_golang v1.23.2
18+
github.com/spf13/pflag v1.0.10
19+
go.uber.org/mock v0.6.0
20+
golang.org/x/crypto v0.41.0
21+
golang.org/x/text v0.28.0
2222
gopkg.in/ini.v1 v1.67.0
23-
k8s.io/api v0.31.9
24-
k8s.io/apiextensions-apiserver v0.31.9
25-
k8s.io/apimachinery v0.31.9
26-
k8s.io/client-go v0.31.9
27-
k8s.io/code-generator v0.31.9
28-
k8s.io/component-base v0.31.9
23+
k8s.io/api v0.31.14
24+
k8s.io/apiextensions-apiserver v0.31.14
25+
k8s.io/apimachinery v0.31.14
26+
k8s.io/client-go v0.31.14
27+
k8s.io/code-generator v0.31.14
28+
k8s.io/component-base v0.31.14
2929
k8s.io/klog/v2 v2.130.1
3030
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340
3131
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8
32-
sigs.k8s.io/cluster-api v1.9.8
33-
sigs.k8s.io/cluster-api/test v1.9.8
32+
sigs.k8s.io/cluster-api v1.9.11
33+
sigs.k8s.io/cluster-api/test v1.9.11
3434
sigs.k8s.io/controller-runtime v0.19.7
3535
sigs.k8s.io/structured-merge-diff/v4 v4.7.0
36-
sigs.k8s.io/yaml v1.4.0
36+
sigs.k8s.io/yaml v1.6.0
3737
)
3838

3939
require (
4040
dario.cat/mergo v1.0.1 // indirect
4141
github.com/BurntSushi/toml v1.4.0 // indirect
4242
github.com/MakeNowJust/heredoc v1.0.0 // indirect
4343
github.com/Masterminds/goutils v1.1.1 // indirect
44-
github.com/Masterminds/semver/v3 v3.3.0 // indirect
44+
github.com/Masterminds/semver/v3 v3.4.0 // indirect
4545
github.com/Masterminds/sprig/v3 v3.3.0 // indirect
4646
github.com/Microsoft/go-winio v0.5.0 // indirect
4747
github.com/NYTimes/gziphandler v1.1.1 // indirect
@@ -54,9 +54,9 @@ require (
5454
github.com/blang/semver/v4 v4.0.0 // indirect
5555
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
5656
github.com/cespare/xxhash/v2 v2.3.0 // indirect
57-
github.com/cloudflare/circl v1.3.7 // indirect
57+
github.com/cloudflare/circl v1.6.1 // indirect
5858
github.com/distribution/reference v0.6.0 // indirect
59-
github.com/docker/docker v27.3.1+incompatible // indirect
59+
github.com/docker/docker v28.0.2+incompatible // indirect
6060
github.com/docker/go-connections v0.5.0 // indirect
6161
github.com/docker/go-units v0.4.0 // indirect
6262
github.com/drone/envsubst/v2 v2.0.0-20210730161058-179042472c46 // indirect
@@ -106,9 +106,9 @@ require (
106106
github.com/pelletier/go-toml v1.9.5 // indirect
107107
github.com/pelletier/go-toml/v2 v2.2.2 // indirect
108108
github.com/pkg/errors v0.9.1 // indirect
109-
github.com/prometheus/client_model v0.6.1 // indirect
110-
github.com/prometheus/common v0.62.0 // indirect
111-
github.com/prometheus/procfs v0.15.1 // indirect
109+
github.com/prometheus/client_model v0.6.2 // indirect
110+
github.com/prometheus/common v0.66.1 // indirect
111+
github.com/prometheus/procfs v0.16.1 // indirect
112112
github.com/sagikazarmark/locafero v0.4.0 // indirect
113113
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
114114
github.com/shopspring/decimal v1.4.0 // indirect
@@ -129,28 +129,30 @@ require (
129129
go.opentelemetry.io/otel/sdk v1.28.0 // indirect
130130
go.opentelemetry.io/otel/trace v1.28.0 // indirect
131131
go.opentelemetry.io/proto/otlp v1.3.1 // indirect
132-
go.uber.org/automaxprocs v1.6.0 // indirect
133132
go.uber.org/multierr v1.11.0 // indirect
134133
go.uber.org/zap v1.27.0 // indirect
134+
go.yaml.in/yaml/v2 v2.4.2 // indirect
135+
go.yaml.in/yaml/v3 v3.0.4 // indirect
135136
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect
136-
golang.org/x/mod v0.25.0 // indirect
137-
golang.org/x/net v0.40.0 // indirect
138-
golang.org/x/oauth2 v0.24.0 // indirect
139-
golang.org/x/sync v0.15.0 // indirect
140-
golang.org/x/sys v0.33.0 // indirect
141-
golang.org/x/term v0.32.0 // indirect
137+
golang.org/x/mod v0.27.0 // indirect
138+
golang.org/x/net v0.43.0 // indirect
139+
golang.org/x/oauth2 v0.30.0 // indirect
140+
golang.org/x/sync v0.16.0 // indirect
141+
golang.org/x/sys v0.35.0 // indirect
142+
golang.org/x/term v0.34.0 // indirect
142143
golang.org/x/time v0.5.0 // indirect
143-
golang.org/x/tools v0.33.0 // indirect
144+
golang.org/x/tools v0.36.0 // indirect
145+
golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated // indirect
144146
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
145147
google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 // indirect
146148
google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect
147149
google.golang.org/grpc v1.65.1 // indirect
148-
google.golang.org/protobuf v1.36.5 // indirect
150+
google.golang.org/protobuf v1.36.8 // indirect
149151
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
150152
gopkg.in/inf.v0 v0.9.1 // indirect
151153
gopkg.in/yaml.v2 v2.4.0 // indirect
152154
gopkg.in/yaml.v3 v3.0.1 // indirect
153-
k8s.io/apiserver v0.31.9 // indirect
155+
k8s.io/apiserver v0.31.14 // indirect
154156
k8s.io/cluster-bootstrap v0.31.3 // indirect
155157
k8s.io/gengo/v2 v2.0.0-20240228010128-51d4e06bde70 // indirect
156158
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect

0 commit comments

Comments
 (0)