Commit Graph

2627 Commits

Author SHA1 Message Date
Tim Hockin
6f2f3735e0
Re-vendor latest kube-openapi and gengo/v2
./hack/pin-dependency.sh k8s.io/kube-openapi latest
./hack/pin-dependency.sh k8s.io/gengo/v2 latest
./hack/update-vendor.sh
2024-02-29 22:06:19 -08:00
Patrick Ohly
65b841c077
Generate go.work files
This creates go.work and enables Go Workspaces.  This is a file that
includes info on k/k and all the staging modules.

This depends on go 1.22 and setting FORCE_HOST_GO=true (for kube
scripts, which try to be hermetic).

Make this part of the normal update/verify sequence.

The top-level go.work file contains no replace statements. Instead, the
replace statements in the individual go.mod files are used. For this to
work, replace statements in the individual go.mod files have to be
consistent.

hack/tools has different dependencies and can't be in the main
workspace, so this adds a go.work just for that.  Without this, go tries
to consider all deps in all modules and pick one that works for all.
This is problematic because there are so many of them that it is
difficult to manage.

Likewise for k8s.io/code-generator/examples and
k8s.io/kms/internal/plugins/_mock - add trivial go.work files.

For example k/k depends on an older version of a lib that gloangci-lint
needs (transitively) and it breaks.

This also updates vendor (needed to make go happy), and removes
vendor'ed symlinks.  This breaks a LOT of our build tools, which will be
fixed subsequently.

Result: `go` commands work across modules:

Before:
```
$ go list ./pkg/proxy/iptables/ ./staging/src/k8s.io/api/core/v1/
main module (k8s.io/kubernetes) does not contain package k8s.io/kubernetes/staging/src/k8s.io/api/core/v1

$ go build ./pkg/proxy/iptables/ ./staging/src/k8s.io/api
main module (k8s.io/kubernetes) does not contain package k8s.io/kubernetes/staging/src/k8s.io/api

$ go test ./pkg/proxy/iptables/ ./staging/src/k8s.io/api
main module (k8s.io/kubernetes) does not contain package k8s.io/kubernetes/staging/src/k8s.io/api
```

After:
```
$ go list ./pkg/proxy/iptables/ ./staging/src/k8s.io/api/core/v1/
k8s.io/kubernetes/pkg/proxy/iptables
k8s.io/api/core/v1

$ go build ./pkg/proxy/iptables/ ./staging/src/k8s.io/api

$ go test ./pkg/proxy/iptables/ ./staging/src/k8s.io/api
ok  	k8s.io/kubernetes/pkg/proxy/iptables	0.360s
ok  	k8s.io/api	2.302s
```

Result: `make` fails:

```
$ make
go version go1.22rc1 linux/amd64
+++ [0106 12:11:03] Building go targets for linux/amd64
    k8s.io/kubernetes/cmd/kube-proxy (static)
    k8s.io/kubernetes/cmd/kube-apiserver (static)
    k8s.io/kubernetes/cmd/kube-controller-manager (static)
    k8s.io/kubernetes/cmd/kubelet (non-static)
    k8s.io/kubernetes/cmd/kubeadm (static)
    k8s.io/kubernetes/cmd/kube-scheduler (static)
    k8s.io/component-base/logs/kube-log-runner (static)
    k8s.io/kube-aggregator (static)
    k8s.io/apiextensions-apiserver (static)
    k8s.io/kubernetes/cluster/gce/gci/mounter (static)
    k8s.io/kubernetes/cmd/kubectl (static)
    k8s.io/kubernetes/cmd/kubectl-convert (static)
    github.com/onsi/ginkgo/v2/ginkgo (non-static)
    k8s.io/kubernetes/test/e2e/e2e.test (test)
    k8s.io/kubernetes/test/conformance/image/go-runner (non-static)
    k8s.io/kubernetes/cmd/kubemark (static)
    github.com/onsi/ginkgo/v2/ginkgo (non-static)
    k8s.io/kubernetes/test/e2e_node/e2e_node.test (test)
test/e2e/e2e.go:35:2: cannot find package "k8s.io/api/apps/v1" in any of:
	/home/thockin/src/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/api/apps/v1 (vendor tree)
	/home/thockin/src/kubernetes/_output/local/.gimme/versions/go1.22rc1.linux.amd64/src/k8s.io/api/apps/v1 (from $GOROOT)
	/home/thockin/src/kubernetes/_output/local/go/src/k8s.io/api/apps/v1 (from $GOPATH)
	... more ...
	... more ...
	... more ...
!!! [0106 12:13:41] Call tree:
!!! [0106 12:13:41]  1: /home/thockin/src/kubernetes/hack/lib/golang.sh:948 kube::golang::build_binaries_for_platform(...)
!!! [0106 12:13:41]  2: hack/make-rules/build.sh:27 kube::golang::build_binaries(...)
!!! [0106 12:13:41] Call tree:
!!! [0106 12:13:41]  1: hack/make-rules/build.sh:27 kube::golang::build_binaries(...)
!!! [0106 12:13:41] Call tree:
!!! [0106 12:13:41]  1: hack/make-rules/build.sh:27 kube::golang::build_binaries(...)
make: *** [Makefile:96: all] Error 1
```

Again, this requires go 1.22 (e.g. gotip), as go 1.21.x does not have
`go work vendor` support.

TO REPEAT:
    ( \
      ./hack/update-go-workspace.sh; \
      ./hack/update-vendor.sh; \
      ./hack/update-go-workspace.sh; \
    )
2024-02-29 00:22:06 -08:00
Joe Betz
d49949b642 Bump cel-go to v0.17.8 to pick up CEL estimated cost fix 2024-02-28 10:52:36 -05:00
Sean Sullivan
03812ddb16 streamtranslator counter metric by status code 2024-02-27 23:21:55 +00:00
Kubernetes Prow Robot
9a90289838
Merge pull request #123348 from hoskeri/update-go-x-crypto-19
Update x/crypto to 0.19.
2024-02-21 09:11:50 -08:00
Kubernetes Prow Robot
6049a1bca4
Merge pull request #122880 from Jefftree/agg-discovery-v2-types
Add aggregated discovery v2 types
2024-02-20 21:03:22 -08:00
Abhijit Hoskeri
d3a0e296de Update x/crypto to 0.19.
Main reason is to pick up updated CA roots.

Full diff: https://github.com/golang/crypto/compare/v0.16.0...v0.19.0
2024-02-16 20:27:57 +00:00
Jordan Liggitt
d5d3eddb95
Add allowed/denied metrics for authorizers 2024-02-16 08:20:59 -05:00
Kubernetes Prow Robot
66d038d84d
Merge pull request #121946 from liggitt/reload-authz
KEP-3221: Implement authorization configuration file reloading
2024-02-15 18:37:13 -08:00
Ben Luddy
066421f108
Add CBOR Serializer implementation. 2024-02-15 10:31:10 -05:00
Kubernetes Prow Robot
e305e773bb
Merge pull request #123250 from benluddy/dep-bump-cbor-v2.6.0
Bump github.com/fxamacker/cbor/v2 to v2.6.0.
2024-02-14 15:56:56 -08:00
Jordan Liggitt
5dc92ada06
Implement authz config file reloading 2024-02-14 18:09:15 -05:00
Ben Luddy
aac43dc96f
Bump github.com/fxamacker/cbor/v2 to v2.6.0. 2024-02-14 10:09:15 -05:00
Alexander Zielenski
b7e70f0e00 update-vendor after package rename 2024-02-13 13:06:39 -08:00
Kubernetes Prow Robot
48228bf9db
Merge pull request #121486 from benluddy/cbor-stub
KEP-4222: Add stub CBOR serializer.
2024-02-09 14:42:05 -08:00
Kubernetes Prow Robot
6972fd7d0b
Merge pull request #122557 from liangyuanpeng/anp_0.29
Bump konnectivity-client to v0.29.0
2024-02-05 08:45:16 -08:00
Davanum Srinivas
2dd81563a9
Update to runc 1.1.12
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2024-01-31 12:20:32 -08:00
Kubernetes Prow Robot
e023511deb
Merge pull request #122920 from danwinship/knftables-migration
Update knftables, with new sigs.k8s.io module name
2024-01-26 07:14:16 +01:00
Ben Luddy
09a1abda99
Update vendoring to take new CBOR library dependency. 2024-01-25 08:35:26 -05:00
Davanum Srinivas
65d67101e7
Drop vsphere cloud provider
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2024-01-23 19:57:01 -05:00
Dan Winship
09abfa46be Update knftables, with new sigs.k8s.io module name 2024-01-23 08:09:05 -05:00
Qi Ni
3bf2bf8191 chore: Cleanup in-tree credential provider azure and cloud provider azure 2024-01-20 15:18:31 +08:00
Jefftree
a2be736c02 vendor update 2024-01-19 12:03:44 -05:00
Kubernetes Prow Robot
b27b56a46c
Merge pull request #122842 from pohly/klog-update
dependencies: klog v2.120.1
2024-01-18 20:11:00 +01:00
Kubernetes Prow Robot
c82da711b0
Merge pull request #122839 from pohly/ginkgo-gomega-update
dependencies: ginkgo v2.15.0, gomega v1.31.0
2024-01-18 20:10:50 +01:00
Patrick Ohly
e2222f1e30 dependencies: klog v2.120.1 2024-01-18 16:58:40 +01:00
Patrick Ohly
18f0af1f00 dependencies: ginkgo v2.15.0, gomega v1.31.0
The main reason for updating is support for reporting the cause of context
cancellation: Ginkgo provides that information when canceling a context and
Gomega polling code includes that when generating a failure message.
2024-01-18 15:24:31 +01:00
Ben Luddy
995135973d
Inject feature gate instance into client-go for kube components.
In order to avoid a dependency cycle between component-base and client-go, client-go maintains
parallel definitions of component-base's feature types and constants. Passing kube's default feature
gate instance to client-go requires an adapter.
2024-01-16 12:51:00 -05:00
Paco Xu
3c86d21316 bump klog to v2.120.0 2024-01-11 17:35:07 +08:00
Kubernetes Prow Robot
627416325c
Merge pull request #122552 from yankay/runc/update-to-1.1.11
Bump runc to v1.1.11
2024-01-08 18:37:47 +01:00
Kubernetes Prow Robot
a7af34e1b8
Merge pull request #122347 from aramase/aramase/c/move_kms_apis
kmsv2: move encryption config types to standard API server config location
2024-01-03 16:16:18 +01:00
bzsuni
5405dd0f9b Update goleak from v1.2.1 to v1.3.0
Signed-off-by: bzsuni <bingzhe.sun@daocloud.io>
2024-01-03 00:20:48 +08:00
Lan Liang
d3b8eba690 Update konnectivity to 0.29.0
update konnectivity server&agent images to 0.29.0

  bump konnectivity deps to 0.29.0

Signed-off-by: Lan Liang <gcslyp@gmail.com>
2024-01-02 14:24:35 +00:00
Kay Yan
7503440ba8 bump runc to v1.1.11
Signed-off-by: Kay Yan <kay.yan@daocloud.io>
2024-01-02 07:26:31 +00:00
Madhav Jivrajani
a8da4202c0 .*: bump golang.org/x/tools to v0.16.1
Bumping tools to include the fix for a nil pointer
deref error in go/types. See golang/go#64812
for more details.

This fix is needed for when we bump to go1.22.

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2023-12-20 14:31:31 +05:30
Patrick Ohly
c8f9ebfb72 dependencies: gomega v1.30.0 + ginkgo v2.13.2
The new gomega.BeTrueBecause and gomega.BeFalseBecause are going to be useful
for https://github.com/kubernetes/kubernetes/issues/105678.
2023-12-19 16:18:05 +01:00
Anish Ramasekar
75695dae10
move encryption config types to standard API server config location
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2023-12-18 20:54:24 +00:00
Kubernetes Prow Robot
e12d4b63d6
Merge pull request #121773 from pohly/zapr-update
dependencies: zapr v1.3.0, zap v1.26.0
2023-12-14 18:14:22 +01:00
Kubernetes Prow Robot
60cde601a8
Merge pull request #121814 from danwinship/kubemark-iptables
Remove --use-real-proxier support from kubemark
2023-12-13 23:55:01 +01:00
Tim Hockin
1f55357d99
Re-vendor k8s.io/kube-openapi
./hack/pin-dependency.sh k8s.io/kube-openapi 778a5567bc1edaed92a4de9c07f90199c67953fa

./hack/update-vendor.sh
2023-11-27 12:06:19 -08:00
Kubernetes Prow Robot
56d7898510
Merge pull request #121739 from ty-dc/runc/update-to-1.1.10
bump runc to v1.1.10
2023-11-15 23:29:35 +01:00
Dan Winship
ae3235aa01 Remove --use-real-proxier support from kubemark
kubemark's proxy mode exists to test how kube-proxy affects the load
on the apiserver, not how it affects the load on the node. There's no
need to generate fake iptables commands, because that all happens
entirely independently of the api watchers.
2023-11-09 06:52:10 -05:00
cpanato
9e5b8402bb
update go.mod
Signed-off-by: cpanato <ctadeu@gmail.com>
2023-11-08 09:32:17 -06:00
Patrick Ohly
166b71757b dependencies: zapr v1.3.0, zap v1.26.0
The new zapr adds support for slog. The new zap has various improvements. It no
longer depends on go.uber.org/atomic which enables dropping it from the
Kubernetes dependencies. github.com/pkg/errors is also no longer needed.
2023-11-07 20:24:28 +01:00
tao.yang
bb315d1339 bump runc to v1.1.10
Signed-off-by: tao.yang <tao.yang@daocloud.io>
2023-11-06 10:42:39 +08:00
Kubernetes Prow Robot
974735854b
Merge pull request #121573 from tukwila/bump_etcd_v3.5.10
bump etcd newest version: v3.5.10
2023-11-01 15:33:13 +01:00
Patrick Ohly
878d037d3b dependencies: klog v2.110.1
Dropping a newline at the end of the message when using klog calls is an
intentional improvement (https://github.com/kubernetes/klog/pull/378)
2023-11-01 09:32:20 +01:00
guangli.bao
bc1df9e7da bump to newest etcd: v3.5.10
Signed-off-by: guangli.bao <guangli.bao@daocloud.io>
2023-11-01 11:59:31 +08:00
Kubernetes Prow Robot
593a17d3b6
Merge pull request #121575 from apelisse/update-smd
Update sigs.k8s.io/structured-merge-diff to v4.4.0
2023-11-01 01:51:17 +01:00
Kubernetes Prow Robot
257b8c3666
Merge pull request #121046 from danwinship/nftables
kube-proxy nftables backend
2023-11-01 01:50:59 +01:00