Kubernetes Prow Robot
cdbdb17934
Merge pull request #118567 from chendave/node_arm_ci
...
Pass the mandatory parameters to build arm64 binaries
2023-06-13 08:22:11 -07:00
Kubernetes Prow Robot
ecf54b8bd5
Merge pull request #118320 from bart0sh/PR115-cleanup-boilerplate.py
...
Cleanup boilerpate.py
2023-06-12 09:35:49 -07:00
xin.li
325205efb7
Migrated pkg/controller/endpoint to contextual logging
...
Signed-off-by: xin.li <xin.li@daocloud.io>
2023-06-11 20:12:07 +08:00
Dave Chen
54cae70678
Pass the mandatory parameters to support testing on ARM64
...
The parameters are needed to build the test binaries, e.g. `e2e_node.test`
`ginkgo` etc.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-06-08 17:33:37 +08:00
Kubernetes Prow Robot
c831a08c8e
Merge pull request #118253 from saschagrunert/streaming-cri-api
...
Move `cri/streaming` to `k8s.io/kubelet` staging repository
2023-06-06 14:14:12 -07:00
Kubernetes Prow Robot
f812ac5445
Merge pull request #118349 from bart0sh/PR116-fix-ginkgo-deprecation-warning
...
Fix ginkgo deprecation warning
2023-06-06 06:59:01 -07:00
Kubernetes Prow Robot
bba9833c39
Merge pull request #118404 from pohly/verify-failures
...
better JUnit failure messages for golangci-lint and verify in general
2023-06-05 08:31:26 -07:00
Sascha Grunert
db9fcfeed2
Move cri/streaming to k8s.io/kubelet staging repository
...
Container runtimes like CRI-O and containerd reuse the code by copying
it from Kubernetes. To have a single source of truth for the streaming
server we now move the already isolated implementation to the
k8s.io/kubelet staging repository. This way runtimes can re-use the code
without copying the parts.
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2023-06-05 08:08:18 +02:00
Patrick Ohly
f4d326a1fc
verify: produce JUnit file also for pull-kubernetes-verify-strict-lint
...
Because this doesn't get invoked through verify.sh, we have to call
logJu ourselves to get a JUnit file. errexit must not be set when
calling logJu, otherwise it does no post-processing.
2023-06-02 17:38:14 +02:00
Jefftree
322968e9b3
Update unwanted dependencies per CI instructions
2023-06-02 14:34:26 +00:00
Patrick Ohly
dbbb21469f
verify: pick relevant lines from verify-golangci-lint.sh as failure message
...
When sh2ju.sh was called to generate the junit_verify.xml, it used to include
the entire output of a failed script twice: once as failure message, once as
log output.
This output can be large and often the actual failure isn't near the top, but
rather at the end or (in the case of the different golangci-lint invocations)
embedded in the log. This makes them hard to see at a glance when looking at
the Prow result page for a job.
Now a verify script can prefix relevant lines with "ERROR: " and then only
those lines are used as failure message in JUnit, without that prefix.
That string was chosen because Prow itself also then picks up those lines when
viewing the entire build log and it is unlikely that some script prints such
lines when they are not meant to be part of the failure.
If some script outputs no such lines, "see stderr for details" is used as
failure message. This is better than before because it avoids the redundancy.
2023-06-02 15:37:50 +02:00
Joe Betz
5c0b59891d
Bump cel-go to v0.16.0
2023-05-31 18:36:43 -04:00
Ed Bartosh
c48c4c679a
Fix ginkgo deprecation warning
...
Fixed ginkgo warning
You're using deprecated Ginkgo functionality:
=============================================
--untilItFails is deprecated, use --until-it-fails instead
Used consistent approach with this flag in e2e_node and e2e scripts.
2023-05-31 12:53:11 +03:00
ZhangYu
f9ae3e774d
testutil: use contextual logging
2023-05-30 10:07:04 +08:00
Ed Bartosh
534f5edb53
Cleanup boilerpate.py
...
- reformatted with https://github.com/psf/black
- fixed some of the https://github.com/pylint-dev/pylint warnings
2023-05-30 00:58:32 +03:00
Kubernetes Prow Robot
d05b79c836
Merge pull request #118269 from liggitt/genproto
...
Update google.golang.org/genproto
2023-05-26 14:43:25 -07:00
Jordan Liggitt
a045fedd02
Update google.golang.org/genproto
2023-05-26 13:20:33 -04:00
Kubernetes Prow Robot
a874f587b4
Merge pull request #118071 from kerthcet/cleanup/use-contextual-logging-in-statefulset
...
Chore: Apply to use contextual logging for all loggers in statefulSet
2023-05-26 07:56:53 -07:00
Kubernetes Prow Robot
74bd0ecdf4
Merge pull request #118223 from pohly/test-integration-vmodule-removal
...
integration: remove special verbosity for garbagecollector and graph_builder
2023-05-24 05:24:50 -07:00
Keita Mochizuki
0813904404
Fix: Restricted profile comply with PSS ( #117543 )
...
* restricted profile comply with PSA v1.27
* add test case
* Reflect review comments
* Reflect review comments 2
* Reflect review comments 3
2023-05-24 04:16:49 -07:00
Patrick Ohly
d459b4429f
integration: remove special verbosity for garbagecollector and graph_builder
...
The setting for garbagecollector was added 7 years ago in 9ac91e5172
for
"debugging gc". graph_builder was added 6 years in a98801c1
when restoring the
-vmodule parameter after some temporary removal, without an explanation.
It seems safe to assume that the garbage collector has been debugged
sufficiently...
These defaults cause performance overhead:
- Enabling -vmodule slows down all log calls because checking verbosity
cannot take a simpler fast path.
- The amount of log output is much higher for those files.
The amount of log data also caused test output to get truncated, removing the
actual test failure explanation.
2023-05-24 10:02:53 +02:00
Kubernetes Prow Robot
12386e2de1
Merge pull request #114053 from brianpursley/fix-update-translations
...
hack/update-translations.sh: Improve backslash handling
2023-05-23 09:06:29 -07:00
Jordan Liggitt
1b206399f6
fix using stale binaries in local-up-cluster
2023-05-22 20:03:58 -04:00
Kubernetes Prow Robot
2e632c9c28
Merge pull request #118187 from thockin/update-vendor_log_capture_cleanup
...
Fix update-vendor.sh logging
2023-05-22 15:51:06 -07:00
Tim Hockin
ece68cf833
Fix update-vendor.sh logging
...
Previously it would corrupt the log when it ran stuff like:
go mod tidy >> "${LOG_FILE}" 2>&1
because this would reopen the file. Also, if that failed, the `finish`
function would be called ALSO with output to the log.
Now we let &1 and &2 always be the log, and &11 and &22 are the real
stdout/stderr, which means we have to say that explicitly when we want
output.
No, I cannot do `OUT="&11"` - I would have to use `eval` to make that
work.
2023-05-22 14:51:30 -07:00
Kubernetes Prow Robot
6aa4261405
Merge pull request #118119 from liggitt/grpc-gateway-v1
...
Mark grpc-gateway v1 as an unwanted dependency
2023-05-18 16:16:33 -07:00
Jordan Liggitt
aa11cc6969
Mark grpc-gateway v1 as an unwanted dependency
2023-05-18 17:41:13 -04:00
Kubernetes Prow Robot
6e8d234bf8
Merge pull request #118073 from jsafrane/support-podman
...
Support podman for building release images
2023-05-18 11:26:34 -07:00
Jan Safranek
b2eae2f92e
Support podman for building release images
...
podman returns nozero exit code for `docker buildx`, because
it misses a subcommand.
`docker buildx version` should work both in podman and docker. Tested both
with docker-ce-20.10.18 + docker-buildx-plugin-0.10.2 and podman-4.5.0 +
podman-docker.
2023-05-18 14:44:26 +02:00
kerthcet
6b4251c0fd
Remove statefulset from logcheck.conf
...
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-05-18 16:55:19 +08:00
Kubernetes Prow Robot
493fdbb782
Merge pull request #117998 from dims/try-protecting-coredns-from-being-oom-killed
...
[local-up-cluster] Update docker/containerd/runc versions and capture more logs
2023-05-17 10:36:35 -07:00
Davanum Srinivas
9346237712
Update docker/containerd/runc versions and capture more logs
...
- use apt to install fresh stuff
- print versions of the components
- throw on debug for docker log
- capture dmesg log
- bump kernel logging
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-05-17 12:38:52 -04:00
Kubernetes Prow Robot
fb5e9ef3b2
Merge pull request #118076 from liggitt/zeitgeist-isolated
...
Drop zeitgeist from tools go.mod
2023-05-17 09:34:33 -07:00
Jordan Liggitt
b9950b5192
Drop zeitgeist from tools go.mod
2023-05-17 08:37:53 -04:00
Humble Chirammal
247ea7fc78
use upstream etcd github path instead of redirecting one
...
In the installation script we use coreos/etcd path which redirect
to etcd-io/etcd. This commit replace the same.
Signed-off-by: Humble Chirammal <humble.devassy@gmail.com>
2023-05-16 20:11:03 +05:30
Humble Chirammal
6616e1f238
update etcd version in install.sh to 3.5.9
...
Signed-off-by: Humble Chirammal <humble.devassy@gmail.com>
2023-05-16 20:11:03 +05:30
Kubernetes Prow Robot
31d0821ab4
Merge pull request #117995 from liggitt/discovery-tests
...
Add tests to capture discovery output
2023-05-16 01:41:43 -07:00
Jordan Liggitt
517c5b75c5
Update unwanted deps
2023-05-15 20:35:58 -04:00
Jordan Liggitt
2ab6fd3590
Capture discovery API output in test fixtures
2023-05-15 14:18:18 -04:00
Kubernetes Prow Robot
6ca4f541d5
Merge pull request #117987 from dims/update-the-cgroups-v2-toleration-in-local-up-cluster
...
Update the cgroups v2 toleration in local-up-cluster
2023-05-13 10:45:26 -07:00
Kubernetes Prow Robot
9bb6db25fc
Merge pull request #117950 from rjsadow/master
...
fix: use dl.k8s.io, not kubernetes-release bucket
2023-05-13 06:47:26 -07:00
Ricky Sadowski
8580c116d5
fix: use dl.k8s.io, not kubernetes-release bucket
...
This PR updates changes related references to the legacy
release bucket, excluding CHANGELOG updates.
Signed-off-by: Ricky Sadowski <richard.j.sadowski@gmail.com>
2023-05-13 10:57:41 +00:00
Davanum Srinivas
196e2f041b
Update the cgroups v2 toleration in local-up-cluster
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-05-12 17:40:38 -04:00
Kubernetes Prow Robot
8479db5876
Merge pull request #117946 from lavalamp/lavalamp-taking-a-break
...
lavalamp is taking a long break
2023-05-12 14:34:47 -07:00
Kubernetes Prow Robot
53636bc780
Merge pull request #117914 from dims/stabilize-local-up-cluster-in-our-CI
...
Stabilize local-up-cluster in our CI
2023-05-12 10:39:01 -07:00
Davanum Srinivas
1168b11875
Stabilize local-up-cluster in our CI
...
- if binaries are already present skip building them
- install missing packages like nftables and kmod
- work better when cgroups v2 is present
- update to newer CNI version (v1.2.0)
- Ensure we wait for coredns to stabilize
- Grab docker log as well (this has containerd logs too)
Used tips from:
- https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/
Tested locally in an environment as close to CI as possible:
- https://gist.github.com/dims/3c83730c99f61e36b8dd2d61abe68fe7
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-05-12 09:16:19 -04:00
Kubernetes Prow Robot
a37783467e
Merge pull request #117941 from pohly/logcheck-update
...
hack/tools: bump logcheck to v0.5.0
2023-05-12 03:02:46 -07:00
Daniel Smith
1ffe3f467e
lavalamp is taking a long break
2023-05-11 16:43:38 +00:00
Patrick Ohly
1ea17254bf
hack/tools: bump logcheck to v0.5.0
2023-05-11 16:54:26 +02:00
Kubernetes Prow Robot
f319dab8d9
Merge pull request #117899 from thockin/codegen_purge_openapi_shell_indirection
...
Simpler openapi gen - subprojects do themselves
2023-05-10 09:35:07 -07:00
Kubernetes Prow Robot
626b2db1ca
Merge pull request #117335 from kkkkun/update-etcd-3.5.8
...
etcd: Update version to 3.5.8
2023-05-10 03:38:59 -07:00
Tim Hockin
6607834207
Use the same report files as before
2023-05-09 19:33:21 -07:00
Tim Hockin
ef796dca9b
Simpler openapi gen - subprojects do themselves
...
This involves moving the report files, but it allows me to delete the
indirect variable and indirect array code in update-codgen. As proud as
I was of figuring that out, I am also ashamed of myself for doing it.
This is my atonement.
2023-05-09 16:24:18 -07:00
Tim Hockin
93b2845bec
Codegen: subprojects openapi
...
Use the "subprojects" aspect of update-codegen to generat openapi for
the subprojects. Next we can simplify and remove the generic support.
apiextensions-apiserver seems like it was ALWAYS broken:
k8s.io/apiextensions/ doesn't exist, but k8s.io/apiextensions-apiserver
does.
Fixing that causes different openapi results, obviously.
2023-05-09 16:24:17 -07:00
Marko Mudrinić
c8737346db
Export GOMAXPROCS environment variable
...
Signed-off-by: Marko Mudrinić <mudrinic.mare@gmail.com>
2023-05-09 15:43:32 +02:00
Kubernetes Prow Robot
c44b2ed0d8
Merge pull request #117342 from kkkkun/update-etcd-deps-3.5.8
...
upgrade etcd deps to v3.5.8
2023-05-06 06:19:17 -07:00
kkkkun
2ebc0cc025
remove unwantedReferences
...
Signed-off-by: kkkkun <scuzk373x@gmail.com>
2023-05-06 19:41:31 +08:00
kkkkun
c56839c0a1
etcd: Update version to 3.5.8
...
Signed-off-by: kkkkun <scuzk373x@gmail.com>
2023-05-06 17:29:47 +08:00
Davanum Srinivas
a862a5f2d2
Use the right executable ss/netstat in log message
...
Ensure we log the same command we executed earlier
2023-05-05 20:23:01 +00:00
Kubernetes Prow Robot
bbbf7fd8ad
Merge pull request #117766 from dims/use-the-kubectl-we-built-local-up-cluster
...
[local-up-cluster] Use the kubectl we built and wait for node to be ready
2023-05-04 06:48:54 -07:00
Davanum Srinivas
5aca41af50
[local-up-cluster] Use the kubectl we built
...
Also wait for the Node to be ready!
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-05-04 07:19:23 -04:00
Davanum Srinivas
8524d21bf4
Bump Ginkgo Poll Progress parameters to a sane level
...
Here's what others in our ecosystem are doing:
https://cs.k8s.io/?q=GINKGO_POLL_PROGRESS_(AFTER%7CINTERVAL)&i=nope&files=&excludeFiles=&repos=
the logs currently are too big partially because of this
incessant output from the progress thingy
When someone wants to debug something, they can use this
set of parameters to something lower to capture these
additional logs.
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-05-04 07:12:15 -04:00
SataQiu
1f7c07f355
scheduler: remove deprecated v1beta2 KubeSchedulerConfiguration
2023-05-03 21:43:19 +08:00
Alexander Zielenski
4721ec7519
include apiextensions types in apiextensions generated openapi
...
k8s_tag_files_matching looks for a slash after its argument, so the current value doesnt match anything
also update codegen
this is required for apiextensions-apiserver tests. After fixing apiextensions server tests to use type-aware SSA (instead of erroneously using untyped SSA) there were errors since none of the apiextensions types were actually used in the openapi given to tests.
2023-05-01 13:18:44 -07:00
Akhil Mohan
76fe41a996
chore: update cgroups and ttrpc versions
...
- update github.com/containerd/cgroups to v1.1.0
- update github.com/containerd/ttrpc to v1.2.1
Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2023-04-27 20:46:23 -07:00
Mark Rossetti
4a6bc66e40
updating microsft/go-winio package to latest version
...
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2023-04-24 15:32:45 -07:00
Kubernetes Prow Robot
1def77f05c
Merge pull request #117551 from pohly/lint-pull-requests
...
golangci-lint: allow exceptions for Go naming convention
2023-04-24 09:51:02 -07:00
Patrick Ohly
4169d7d028
golangci-lint: allow exceptions for Go naming convention
...
In strict mode, stylecheck complains about Convert_* and SetDefaults_*
functions in Kubernetes because they use underscores. We want to allow that to
make the functions more readable.
2023-04-24 15:05:47 +02:00
Benjamin Elder
ed37e6986b
uncomment exit trap to cleanup tmpdir
2023-04-21 16:16:53 -07:00
Benjamin Elder
63d44fdde5
retain KUBE_GOPATH on recursive kube::golang
2023-04-21 16:15:21 -07:00
Benjamin Elder
4d736a0435
cleanup update-mocks.sh
...
- remove unused tempdir
- use mktemp instead of creating tmpfile in repo
- normalize indent
2023-04-21 16:15:21 -07:00
Benjamin Elder
726992f9db
call kube::golang::setup_env before setting up worktree
2023-04-21 16:15:21 -07:00
Benjamin Elder
11f3ef1ed7
drop linux/arm build warning, now that 1.27 is released, this is covered by the release notes
...
dims notes there have been no complaints so far
2023-04-20 15:47:57 -07:00
Kubernetes Prow Robot
aab9a7c262
Merge pull request #116385 from kinvolk/rata/local-up-chown
...
hack/local-up-cluster.sh: Always sudo chown the certs dir
2023-04-13 00:20:36 -07:00
Tim Hockin
5668399a87
Codegen: use openapi-gen via k8s.io/code-generator
2023-04-12 17:08:36 -07:00
Kubernetes Prow Robot
ad85a92dd4
Merge pull request #116281 from thockin/codegen_subproject_chdir
...
Codegen: subproject cleanups and chdir
2023-04-12 09:58:31 -07:00
Mengjiao Liu
5588e8a4cd
hack/logcheck.conf: remove certificate controller exception
2023-04-12 15:20:04 +08:00
Kubernetes Prow Robot
d4fab7e56c
Merge pull request #117016 from dims/set-GOMAXPROCS-explicitly
...
Set GOMAXPROCS explicitly
2023-04-11 19:18:08 -07:00
Kubernetes Prow Robot
3c076e4b7d
Merge pull request #116672 from dims/add-an-image-for-kubectl
...
Add an image for kubectl
2023-04-11 18:19:02 -07:00
Kubernetes Prow Robot
4c022ceb2c
Merge pull request #116283 from thockin/codegen_fix_full_regen
...
Codegen: fix full (burn it to the ground) regen
2023-04-11 15:35:56 -07:00
Kubernetes Prow Robot
239cc18193
Merge pull request #115729 from pohly/hack-approver-pohly
...
hack/OWNERS: add pohly as reviewer and approver
2023-04-11 15:35:34 -07:00
Tim Hockin
73eb7c0930
Codegen: easier to read logs for subproject output
2023-04-11 15:19:27 -07:00
Tim Hockin
bbbb695060
Codegen: subproject: chdir to the project dir
...
This makes it feel more like an API to be used in other repos (which is
really what it is for).
2023-04-11 15:18:08 -07:00
Tim Hockin
893ec0ca45
Codegen: simpler k8s.io/code-generator/examples
...
This moves the hack/ directory and scripts to the examples dir, which is
a distinct module. This avoids some Go unpleasantness around module
boundaries and just makes more sense.
2023-04-11 14:19:45 -07:00
Rodrigo Campos
d212041d51
hack/local-up-cluster.sh: Remove old dynamic certs
...
When running this script more than once on Debian and Ubuntu, we fail to
chown -R the CERT_DIR due to this file owned by root and the CERT_DIR
owned by the unprivileged user running the script.
Let's remove the file, that is something we can always do, before
generating the certs. This fixes the problem on Debian and Ubuntu local
setups.
Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2023-04-11 20:09:47 +02:00
Davanum Srinivas
5662566e03
Set GOMAXPROCS explicitly
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-03-30 20:26:07 -04:00
Maciej Szulik
27ad623b3d
Skip vendor directory when removing generated files
2023-03-27 19:07:43 +02:00
Jordan Liggitt
a2bba333cc
Drop development dependencies from test targets
2023-03-22 10:38:42 -04:00
Davanum Srinivas
26313ed2b0
Move the arm deprecation notice in a different spot
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-03-17 10:28:32 -04:00
Davanum Srinivas
41ed0e1234
Add an image for kubectl
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-03-16 10:28:04 -04:00
Taahir Ahmed
6a75e7c40c
ClusterTrustBundles: Define types
...
This commit is the main API piece of KEP-3257 (ClusterTrustBundles).
This commit:
* Adds the certificates.k8s.io/v1alpha1 API group
* Adds the ClusterTrustBundle type.
* Registers the new type in kube-apiserver.
* Implements the type-specfic validation specified for
ClusterTrustBundles:
- spec.pemTrustAnchors must always be non-empty.
- spec.signerName must be either empty or a valid signer name.
- Changing spec.signerName is disallowed.
* Implements the "attest" admission check to restrict actions on
ClusterTrustBundles that include a signer name.
Because it wasn't specified in the KEP, I chose to make attempts to
update the signer name be validation errors, rather than silently
ignored.
I have tested this out by launching these changes in kind and
manipulating ClusterTrustBundle objects in the resulting cluster using
kubectl.
2023-03-15 20:10:18 -07:00
Kubernetes Prow Robot
c072cae4d0
Merge pull request #108838 from nckturner/webhook-framework
...
Webhook framework for cloud controller manager
2023-03-14 20:28:14 -07:00
Kubernetes Prow Robot
f44d561c1f
Merge pull request #115075 from aojea/ipaddress
...
IPAddress allocator
2023-03-14 19:26:13 -07:00
Kubernetes Prow Robot
6df64241d0
Merge pull request #116598 from natasha41575/updateKustV5
...
Update kubectl kustomize to kyaml/v0.14.1, cmd/config/v0.11.1, api/v0…
2023-03-14 17:44:55 -07:00
Kubernetes Prow Robot
758b464152
Merge pull request #116613 from enj/patch-5
...
kmsv2: add k8s.io/kms/internal/plugins/mock to internal modules
2023-03-14 16:35:03 -07:00
Kubernetes Prow Robot
1586138519
Merge pull request #115750 from saschagrunert/otel-beta
...
Graduate `KubeletTracing` feature to beta
2023-03-14 16:34:33 -07:00
Nick Turner
86f4136003
Webhook framework for cloud controller manager
...
Provides framework for CCMs to host webhooks.
2023-03-14 23:28:05 +00:00
Antonio Ojea
d6d057b9a1
hack import aliases
2023-03-14 22:58:11 +00:00
Mo Khan
81586ff81a
Add k8s.io/kms/internal/plugins/mock to internal modules
2023-03-14 16:31:54 -04:00
Patrick Ohly
f26f896128
hack/logcheck.conf: enforce contextual logging in kube-controller-manager
...
Not all PRs made it into 1.27, but enough that it is now easier to list the
exceptions.
2023-03-14 19:17:31 +01:00
natasha41575
09e6e4db1d
Update kubectl kustomize to kyaml/v0.14.1, cmd/config/v0.11.1, api/v0.13.2, kustomize/v5.0.1
2023-03-14 11:40:28 -05:00
Kubernetes Prow Robot
06619135e0
Merge pull request #114226 from saschagrunert/apiextensions-apiserver-static
...
Link `apiextensions-apiserver` binary statically
2023-03-14 08:36:16 -07:00
Kubernetes Prow Robot
c8f001d798
Merge pull request #114504 from vrutkovs/tracing-kubelet-toplevel
...
kubelet: create top-level traces for pod sync and GC
2023-03-14 03:12:16 -07:00
Patrick Ohly
29941b8d3e
api: resource.k8s.io v1alpha1 -> v1alpha2
...
For Kubernetes 1.27, we intend to make some breaking API changes:
- rename PodScheduling -> PodSchedulingHints (https://github.com/kubernetes/kubernetes/issues/114283 )
- extend ResourceClaimStatus (https://github.com/kubernetes/enhancements/pull/3802 )
We need to switch from v1alpha1 to v1alpha2 for that.
2023-03-14 07:52:03 +01:00
Kubernetes Prow Robot
110541b3d7
Merge pull request #116490 from tallclair/docs-urls2
...
Fix broken links in API documentation
2023-03-13 16:48:56 -07:00
Tim Allclair
3808920328
Add a script to verify that URLs in API documentation are valid
2023-03-13 11:37:59 -07:00
Sascha Grunert
1c0a5aa84a
Link apiextensions-apiserver
binary statically
...
The apiextensions-apiserver itself only depends on the following runtime
libraries when linking dynamically:
```
> ldd _output/bin/apiextensions-apiserver
linux-vdso.so.1 (0x00007ffd1b39f000)
libpthread.so.0 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libpthread.so.0 (0x00007fe836022000)
libc.so.6 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libc.so.6 (0x00007fe835e00000)
/nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/ld-linux-x86-64.so.2 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib64/ld-linux-x86-64.so.2 (0x00007fe836029000)
```
We now move the apiextensions-apiserver to become a static binary as
well to achieve maximum portability.
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2023-03-13 09:00:36 +01:00
Davanum Srinivas
320cb6d9ef
Revert "Disable unified build and static init optimization for tests"
...
This reverts commit e20d77bb79
.
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-03-11 14:09:16 -05:00
Kubernetes Prow Robot
bb6c6fad2c
Merge pull request #115742 from dims/drop-32-bit-platforms
...
Drop 32 bit linux/arm platform
2023-03-11 06:12:40 -08:00
Vadim Rutkovsky
556d774945
kubelet: create top-level traces for pod sync and GC
...
This starts new top level OpenTelemetry spans every time syncPod or image / container GC is invoked
2023-03-11 10:42:14 +01:00
Kubernetes Prow Robot
0804a86ce6
Merge pull request #116286 from thockin/logging_int_cmp
...
bash: compare numbers numerically, not lexically
2023-03-10 16:30:39 -08:00
Kubernetes Prow Robot
5452109c9d
Merge pull request #114227 from saschagrunert/kube-aggregator-static
...
Link `kube-aggregator` binary statically
2023-03-10 15:22:39 -08:00
Kubernetes Prow Robot
a3ad4d7623
Merge pull request #114017 from calvin0327/cleanup-containerruntime-options
...
cleanup container runtime options
2023-03-09 21:33:06 -08:00
Kubernetes Prow Robot
45b96eae98
Merge pull request #113145 from smarterclayton/zombie_terminating_pods
...
kubelet: Force deleted pods can fail to move out of terminating
2023-03-09 15:32:30 -08:00
Clayton Coleman
6b9a381185
kubelet: Force deleted pods can fail to move out of terminating
...
If a CRI error occurs during the terminating phase after a pod is
force deleted (API or static) then the housekeeping loop will not
deliver updates to the pod worker which prevents the pod's state
machine from progressing. The pod will remain in the terminating
phase but no further attempts to terminate or cleanup will occur
until the kubelet is restarted.
The pod worker now maintains a store of the pods state that it is
attempting to reconcile and uses that to resync unknown pods when
SyncKnownPods() is invoked, so that failures in sync methods for
unknown pods no longer hang forever.
The pod worker's store tracks desired updates and the last update
applied on podSyncStatuses. Each goroutine now synchronizes to
acquire the next work item, context, and whether the pod can start.
This synchronization moves the pending update to the stored last
update, which will ensure third parties accessing pod worker state
don't see updates before the pod worker begins synchronizing them.
As a consequence, the update channel becomes a simple notifier
(struct{}) so that SyncKnownPods can coordinate with the pod worker
to create a synthetic pending update for unknown pods (i.e. no one
besides the pod worker has data about those pods). Otherwise the
pending update info would be hidden inside the channel.
In order to properly track pending updates, we have to be very
careful not to mix RunningPods (which are calculated from the
container runtime and are missing all spec info) and config-
sourced pods. Update the pod worker to avoid using ToAPIPod()
and instead require the pod worker to directly use
update.Options.Pod or update.Options.RunningPod for the
correct methods. Add a new SyncTerminatingRuntimePod to prevent
accidental invocations of runtime only pod data.
Finally, fix SyncKnownPods to replay the last valid update for
undesired pods which drives the pod state machine towards
termination, and alter HandlePodCleanups to:
- terminate runtime pods that aren't known to the pod worker
- launch admitted pods that aren't known to the pod worker
Any started pods receive a replay until they reach the finished
state, and then are removed from the pod worker. When a desired
pod is detected as not being in the worker, the usual cause is
that the pod was deleted and recreated with the same UID (almost
always a static pod since API UID reuse is statistically
unlikely). This simplifies the previous restartable pod support.
We are careful to filter for active pods (those not already
terminal or those which have been previously rejected by
admission). We also force a refresh of the runtime cache to
ensure we don't see an older version of the state.
Future changes will allow other components that need to view the
pod worker's actual state (not the desired state the podManager
represents) to retrieve that info from the pod worker.
Several bugs in pod lifecycle have been undetectable at runtime
because the kubelet does not clearly describe the number of pods
in use. To better report, add the following metrics:
kubelet_desired_pods: Pods the pod manager sees
kubelet_active_pods: "Admitted" pods that gate new pods
kubelet_mirror_pods: Mirror pods the kubelet is tracking
kubelet_working_pods: Breakdown of pods from the last sync in
each phase, orphaned state, and static or not
kubelet_restarted_pods_total: A counter for pods that saw a
CREATE before the previous pod with the same UID was finished
kubelet_orphaned_runtime_pods_total: A counter for pods detected
at runtime that were not known to the kubelet. Will be
populated at Kubelet startup and should never be incremented
after.
Add a metric check to our e2e tests that verifies the values are
captured correctly during a serial test, and then verify them in
detail in unit tests.
Adds 23 series to the kubelet /metrics endpoint.
2023-03-08 22:03:51 -06:00
Paco Xu
a1def4b9c0
pod-infra-container-image: update comments as it will be removed in couple more releases
...
Signed-off-by: Paco Xu <paco.xu@daocloud.io>
2023-03-09 11:14:32 +08:00
Kubernetes Prow Robot
bbe0eb7595
Merge pull request #116386 from kinvolk/rata/local-up-cleanup
...
hack/local-up-cluster.sh: Cleaup on SIGINT
2023-03-08 18:46:07 -08:00
Rodrigo Campos
5f568d51be
hack/local-up-cluster.sh: Cleaup on SIGINT
...
Currently we only cleanup on exit. Let's trap SIGINT (ctrl-c) too, so we
always cleanup everything.
Otherwise if we ctrl-c is easy to leave something running, specially if
we ctrl-c while the cleanup function is running. And when we leave
something running and don't reused the certs ($REUSE_CERTS), that is the
default, something is left running and it fails with weird ways as we
can't auth with the new certs.
Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2023-03-08 17:37:50 +01:00
Patrick Ohly
a04e20f622
golangci-lint: synchronize configs and add verification for that
...
https://github.com/kubernetes/kubernetes/pull/109728 added a
golangci-strict.yaml where gingkolinter and stylecheck (some recent additions
to golangci.yaml) were missing.
To prevent such mistakes in the future, lines that are intentionally different
get annotated with a comment about golangci-strict.yaml or golangci.yaml.
Then a suitable diff command in the new verify-golangci-lint-config.sh checks
that only such lines, comments and blank lines are different.
2023-03-08 15:23:27 +01:00
Kubernetes Prow Robot
2abc76161f
Merge pull request #116154 from liggitt/feature-gate
...
Handle AllAlpha and AllBeta in SetFeatureGateDuringTest
2023-03-07 19:31:19 -08:00
Patrick Ohly
04700e97d3
hack: prepare for strict golangci-lint in pull-verify-kubernetes
...
The long-term goal is that when "make verify" is invoked in pull job, it will
also run golangci-lint with the strict configuration and write an
$ARTIFACTS/golangci-lint-githubactions.log file with GitHub actions
annotations. How to get those published for the GitHub PR is open.
When "make verify" is invoked manually or in any other job, the stricter check
will be skipped. That works because "PR_NUMBER" is only set for pre-merge
jobs (https://github.com/kubernetes/test-infra/blob/master/prow/jobs.md#job-environment-variables ).
Because strict linting is still new and might not be useful without a better
UI (= GitHub annotations), this PR does not fully enable the integration into
"make verify". Instead, the new verify-golangci-lint-pr.sh is excluded from it
and needs to be run in a separate job.
2023-03-07 19:38:32 +01:00
Patrick Ohly
78a3430606
golangci-lint: support stricter checking in new code
...
It is useful to check new code with a stricter configuration because we want it
to be of higher quality. Code reviews also become easier when reviewers don't
need to point out inefficient code manually.
What exactly should be enabled is up for debate. The current config uses the
golangci-lint defaults plus everything that is enabled explicitly by the normal
golangci.yaml, just to be on the safe side.
2023-03-07 19:37:57 +01:00
Kubernetes Prow Robot
e706788455
Merge pull request #116248 from pohly/test-govet-levee
...
verify: include "govet-levee" in normal "make verify"
2023-03-07 07:21:12 -08:00
Tim Hockin
fe96e5704f
bash: compare numbers numerically, not lexically
...
Thanks, bash, for supporting < and > and making them NOT mean the obvious thing.
[[ 2 < 10 ]] is false
(( 2 < 10 )) is true
2023-03-06 14:53:15 -08:00
Davanum Srinivas
5da6f786df
Drop linux/arm from regular builds
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-03-06 17:31:50 -05:00
Tim Hockin
64ecb161d4
Codegen: git grep returns non-zero if no match
2023-03-05 12:20:15 -08:00
Tim Hockin
241d46d1dd
Codegen: deepcopy needs to run before swagger
2023-03-05 12:20:15 -08:00
Tim Hockin
3405853e6d
Codegen: clean up stray ls-files use
2023-03-05 12:20:14 -08:00
Kubernetes Prow Robot
ff735dff85
Merge pull request #116166 from pohly/test-go-vet
...
fix "go vet" issues, check as part of golangci-lint
2023-03-03 14:14:58 -08:00
Patrick Ohly
c496c92f4d
verify: include "govet-levee" in normal "make verify"
...
The corresponding feature was already moved to stable:
https://github.com/kubernetes/enhancements/blob/master/keps/sig-security/1933-secret-logging-static-analysis/kep.yaml
Including this check in the normal "make verify" and "pull-kubernetes-verify"
is the first step. The next step is to remove the separate
"pull-kubernetes-verify-govet-levee".
2023-03-03 11:53:22 +01:00
Patrick Ohly
5331973fa5
verify-govet-levee.sh: optimize "go list"
...
go list -find takes ~60% the time:
$ time go list -e ./... | grep -E -v "/(build|third_party|vendor|staging|clientset_generated|hack)/" | md5sum
b5593b3f51f3b3cd08c33bbff9627d10 -
real 0m2.687s
user 0m3.624s
sys 0m1.552s
$ time go list -find -e ./... | grep -E -v "/(build|third_party|vendor|staging|clientset_generated|hack)/" | md5sum
b5593b3f51f3b3cd08c33bbff9627d10 -
real 0m1.721s
user 0m1.675s
sys 0m1.197s
https://github.com/kubernetes/kubernetes/pull/116166#discussion_r1123924871
2023-03-03 07:51:04 +01:00
Patrick Ohly
fd8523aa08
golangci-lint: enable running specific linters
...
To run just a specific linter based on command line flags, the default
configuration needs to be disabled (because it would enable additional ones)
and then command line flags must be passed through to "golangci-lint run".
For example, to lint with just "go vet" in verbose mode, use:
verify-golangci-lint.sh -c none -- --disable-all --enable=govet -v
2023-03-03 07:51:04 +01:00
Patrick Ohly
a58eb1b3da
staging: fix "go vet" issues
...
These issues were not found earlier because "make vet" ignored staging. Some of
these fixes are stylistic and/or don't matter in practice, but all of the
loopclosure issues seem to be real: those tests didn't run as intended.
Here's the full error report:
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_discovery_controller.go:304:11: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersion struct literal uses unkeyed fields (govet)
gv := schema.GroupVersion{crd.Spec.Group, v.Name}
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_handler_test.go:790:119: composites: k8s.io/apimachinery/pkg/runtime/serializer/json.SerializerOptions struct literal uses unkeyed fields (govet)
delegate := serializerjson.NewSerializerWithOptions(serializerjson.DefaultMetaFactory, unstructuredCreator{}, nil, serializerjson.SerializerOptions{tc.yaml, false, tc.strictDecoding})
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/compilation.go:171:30: composites: k8s.io/apiserver/pkg/cel.Error struct literal uses unkeyed fields (govet)
compilationResult.Error = &apiservercel.Error{apiservercel.ErrorTypeInvalid, "compilation failed: " + issues.String()}
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/compilation.go:175:30: composites: k8s.io/apiserver/pkg/cel.Error struct literal uses unkeyed fields (govet)
compilationResult.Error = &apiservercel.Error{apiservercel.ErrorTypeInvalid, "cel expression must evaluate to a bool"}
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/compilation.go:182:30: composites: k8s.io/apiserver/pkg/cel.Error struct literal uses unkeyed fields (govet)
compilationResult.Error = &apiservercel.Error{apiservercel.ErrorTypeInternal, "unexpected compilation error: " + err.Error()}
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/compilation.go:201:30: composites: k8s.io/apiserver/pkg/cel.Error struct literal uses unkeyed fields (govet)
compilationResult.Error = &apiservercel.Error{apiservercel.ErrorTypeInvalid, "program instantiation failed: " + err.Error()}
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/compilation.go:206:30: composites: k8s.io/apiserver/pkg/cel.Error struct literal uses unkeyed fields (govet)
compilationResult.Error = &apiservercel.Error{apiservercel.ErrorTypeInternal, "cost estimation failed: " + err.Error()}
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:38:14: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"foo"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:44:15: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"foo"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:53:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:58:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"B"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:63:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"C"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:76:19: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:81:19: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"B"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:91:18: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"N"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:96:18: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"O"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:108:21: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"alpha"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:113:21: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"beta"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:123:16: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"bar"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:133:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:147:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:159:15: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:169:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:179:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:190:18: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/algorithm_test.go:202:18: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/prunenulls_test.go:38:14: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"foo"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/prunenulls_test.go:47:17: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"A"},
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/defaulting/prunenulls_test.go:57:18: composites: k8s.io/apiextensions-apiserver/pkg/apiserver/schema.JSON struct literal uses unkeyed fields (govet)
Default: structuralschema.JSON{"C"},
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/defaulting_test.go:289:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/listtype_test.go:140:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/objectmeta_test.go:453:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/pruning_test.go:214:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/pruning_test.go:266:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/pruning_test.go:377:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/pruning_test.go:418:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/pruning_test.go:471:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/test/integration/pruning_test.go:556:38: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
fooClient := dynamicClient.Resource(schema.GroupVersionResource{crd.Spec.Group, crd.Spec.Versions[0].Name, crd.Spec.Names.Plural})
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/celcoststability_test.go:1096:32: loopclosure: loop variable validRule captured by func literal (govet)
s := withRule(*tt.schema, validRule)
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/celcoststability_test.go:1107:19: loopclosure: loop variable expectedCost captured by func literal (govet)
if rtCost != expectedCost {
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/celcoststability_test.go:1108:83: loopclosure: loop variable expectedCost captured by func literal (govet)
t.Fatalf("runtime cost %d does not match expected runtime cost %d", rtCost, expectedCost)
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/validation_test.go:2009:30: loopclosure: loop variable tt captured by func literal (govet)
celValidator := validator(tt.schema, true, model.SchemaDeclType(tt.schema, true), PerCallLimit)
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/validation_test.go:2013:65: loopclosure: loop variable tt captured by func literal (govet)
errs, _ := celValidator.Validate(ctx, field.NewPath("root"), tt.schema, tt.obj, tt.oldObj, math.MaxInt)
^
staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/validation_test.go:2015:22: loopclosure: loop variable tt captured by func literal (govet)
for _, e := range tt.errors {
^
staging/src/k8s.io/apimachinery/pkg/runtime/mapper_test.go:28:67: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
gvr := func(g, v, r string) schema.GroupVersionResource { return schema.GroupVersionResource{g, v, r} }
^
staging/src/k8s.io/apimachinery/pkg/runtime/mapper_test.go:30:63: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
gvk := func(g, v, k string) schema.GroupVersionKind { return schema.GroupVersionKind{g, v, k} }
^
staging/src/k8s.io/apimachinery/pkg/runtime/serializer/versioning/versioning.go:150:35: composites: k8s.io/apimachinery/pkg/runtime.WithoutVersionDecoder struct literal uses unkeyed fields (govet)
if err := d.DecodeNestedObjects(runtime.WithoutVersionDecoder{c.decoder}); err != nil {
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/predicates/namespace/matcher.go:119:18: composites: k8s.io/apimachinery/pkg/api/errors.StatusError struct literal uses unkeyed fields (govet)
return false, &apierrors.StatusError{status.Status()}
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/testing/testcase.go:300:17: composites: k8s.io/api/admissionregistration/v1.MutatingWebhook struct literal uses unkeyed fields (govet)
mutating[i] = registrationv1.MutatingWebhook{h.Name, h.ClientConfig, h.Rules, h.FailurePolicy, h.MatchPolicy, h.NamespaceSelector, h.ObjectSelector, h.SideEffects, h.TimeoutSeconds, h.AdmissionReviewVersions, nil}
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:70:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"extensions", "v1beta1", "deployments"}, "", schema.GroupVersionKind{"extensions", "v1beta1", "Deployment"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:71:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1", "deployments"}, "", schema.GroupVersionKind{"apps", "v1", "Deployment"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:72:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1beta1", "deployments"}, "", schema.GroupVersionKind{"apps", "v1beta1", "Deployment"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:73:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1alpha1", "deployments"}, "", schema.GroupVersionKind{"apps", "v1alpha1", "Deployment"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:75:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"extensions", "v1beta1", "deployments"}, "scale", schema.GroupVersionKind{"extensions", "v1beta1", "Scale"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:76:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1", "deployments"}, "scale", schema.GroupVersionKind{"autoscaling", "v1", "Scale"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:77:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1beta1", "deployments"}, "scale", schema.GroupVersionKind{"apps", "v1beta1", "Scale"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:78:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1alpha1", "deployments"}, "scale", schema.GroupVersionKind{"apps", "v1alpha1", "Scale"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:81:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"example.com", "v1", "widgets"}, "", schema.GroupVersionKind{"", "", ""})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:82:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"example.com", "v2", "widgets"}, "", schema.GroupVersionKind{"", "", ""})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go💯 59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"apps", "v1", "Deployment"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:114:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"apps", "v1", "Deployment"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:116:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"apps", "v1", "Deployment"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:139:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"apps", "v1", "Deployment"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:141:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"apps", "v1", "Deployment"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:159:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"apps", "v1", "Deployment"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:179:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"apps", "v1", "Deployment"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:199:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"apps", "v1", "Deployment"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:201:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"extensions", "v1beta1", "Deployment"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:220:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"apps", "v1", "Deployment"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:222:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"apps", "v1beta1", "Deployment"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:246:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "scale", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:248:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"autoscaling", "v1", "Scale"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:266:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "scale", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:286:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "scale", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:306:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "scale", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:308:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"extensions", "v1beta1", "Scale"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:327:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "scale", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:329:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"apps", "v1beta1", "Scale"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:343:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:345:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"autoscaling", "v1", "Scale"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:359:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:375:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"extensions", "v1beta1", "deployments"}, "scale", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:377:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"autoscaling", "v1", "Scale"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:392:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"extensions", "v1beta1", "deployments"}, "scale", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:413:61: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:415:22: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectMatchKind: &schema.GroupVersionKind{"autoscaling", "v1", "Scale"},
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:435:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"extensions", "v1beta1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:450:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:460:59: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(nil, nil, schema.GroupVersionKind{"autoscaling", "v1", "Scale"}, "ns", "name", schema.GroupVersionResource{"apps", "v1", "deployments"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:475:70: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(&example.Pod{}, nil, schema.GroupVersionKind{"example.apiserver.k8s.io", "v1", "Pod"}, "ns", "name", schema.GroupVersionResource{"example.apiserver.k8s.io", "v1", "pods"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:491:70: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(&example.Pod{}, nil, schema.GroupVersionKind{"example.apiserver.k8s.io", "v1", "Pod"}, "ns", "name", schema.GroupVersionResource{"example.apiserver.k8s.io", "v1", "pods"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:507:70: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(&example.Pod{}, nil, schema.GroupVersionKind{"example.apiserver.k8s.io", "v1", "Pod"}, "ns", "name", schema.GroupVersionResource{"example.apiserver.k8s.io", "v1", "pods"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:523:70: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
attrs: admission.NewAttributesRecord(&example.Pod{}, nil, schema.GroupVersionKind{"example.apiserver.k8s.io", "v1", "Pod"}, "ns", "name", schema.GroupVersionResource{"example.apiserver.k8s.io", "v1", "pods"}, "", admission.Create, &metav1.CreateOptions{}, false, nil),
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:591:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"extensions", "v1beta1", "deployments"}, "", schema.GroupVersionKind{"extensions", "v1beta1", "Deployment"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:592:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1", "deployments"}, "", schema.GroupVersionKind{"apps", "v1", "Deployment"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:593:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1beta1", "deployments"}, "", schema.GroupVersionKind{"apps", "v1beta1", "Deployment"})
^
staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching_test.go:594:25: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionResource struct literal uses unkeyed fields (govet)
mapper.RegisterKindFor(schema.GroupVersionResource{"apps", "v1alpha1", "deployments"}, "", schema.GroupVersionKind{"apps", "v1alpha1", "Deployment"})
^
staging/src/k8s.io/client-go/tools/leaderelection/resourcelock/leaselock.go:120:19: composites: k8s.io/apimachinery/pkg/apis/meta/v1.Time struct literal uses unkeyed fields (govet)
r.AcquireTime = metav1.Time{spec.AcquireTime.Time}
^
staging/src/k8s.io/client-go/tools/leaderelection/resourcelock/leaselock.go:123:17: composites: k8s.io/apimachinery/pkg/apis/meta/v1.Time struct literal uses unkeyed fields (govet)
r.RenewTime = metav1.Time{spec.RenewTime.Time}
^
staging/src/k8s.io/client-go/tools/leaderelection/resourcelock/leaselock.go:135:26: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
AcquireTime: &metav1.MicroTime{ler.AcquireTime.Time},
^
staging/src/k8s.io/client-go/tools/leaderelection/resourcelock/leaselock.go:136:26: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
RenewTime: &metav1.MicroTime{ler.RenewTime.Time},
^
staging/src/k8s.io/client-go/plugin/pkg/client/auth/exec/exec_test.go:1088:28: composites: k8s.io/apimachinery/pkg/apis/meta/v1.Time struct literal uses unkeyed fields (govet)
ExpirationTimestamp: &v1.Time{now.Add(time.Hour)},
^
staging/src/k8s.io/client-go/plugin/pkg/client/auth/exec/exec_test.go:1100:28: composites: k8s.io/apimachinery/pkg/apis/meta/v1.Time struct literal uses unkeyed fields (govet)
ExpirationTimestamp: &v1.Time{now.Add(time.Hour)},
^
staging/src/k8s.io/client-go/plugin/pkg/client/auth/exec/exec_test.go:1110:28: composites: k8s.io/apimachinery/pkg/apis/meta/v1.Time struct literal uses unkeyed fields (govet)
ExpirationTimestamp: &v1.Time{now.Add(time.Hour)},
^
staging/src/k8s.io/client-go/tools/events/event_recorder.go:44:15: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
timestamp := metav1.MicroTime{time.Now()}
^
staging/src/k8s.io/client-go/tools/events/eventseries_test.go:95:24: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
EventTime: metav1.MicroTime{time.Now()},
^
staging/src/k8s.io/client-go/tools/events/eventseries_test.go:299:56: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
cachedEvent := recorder.makeEvent(regarding, related, metav1.MicroTime{time.Now()}, v1.EventTypeNormal, "test", "some verbose message: 1", "eventTest", "eventTest-"+hostname, "started")
^
staging/src/k8s.io/client-go/tools/events/eventseries_test.go:385:57: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
cachedEvent := recorder.makeEvent(regarding, related, metav1.MicroTime{time.Now()}, v1.EventTypeNormal, "test", "some verbose message: 1", "eventTest", "eventTest-"+hostname, "started")
^
staging/src/k8s.io/client-go/tools/leaderelection/leaderelection_test.go:365:26: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
AcquireTime: &metav1.MicroTime{time.Now()},
^
staging/src/k8s.io/client-go/tools/leaderelection/leaderelection_test.go:366:26: composites: k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime struct literal uses unkeyed fields (govet)
RenewTime: &metav1.MicroTime{time.Now()},
^
staging/src/k8s.io/client-go/tools/auth/exec/types_test.go:40:53: loopclosure: loop variable cluster captured by func literal (govet)
testClientAuthenticationClusterTypesAreSynced(t, cluster)
^
staging/src/k8s.io/cli-runtime/pkg/resource/scheme_test.go:44:16: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectGVK: &schema.GroupVersionKind{"", "v1", "Status"},
^
staging/src/k8s.io/cli-runtime/pkg/resource/scheme_test.go:50:16: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectGVK: &schema.GroupVersionKind{"meta.k8s.io", "v1", "Status"},
^
staging/src/k8s.io/cli-runtime/pkg/resource/scheme_test.go:56:16: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectGVK: &schema.GroupVersionKind{"example.com", "v1", "Status"},
^
staging/src/k8s.io/cli-runtime/pkg/resource/scheme_test.go:62:16: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
expectGVK: &schema.GroupVersionKind{"example.com", "v1", "Foo"},
^
staging/src/k8s.io/cli-runtime/pkg/resource/builder_example_test.go:77:1: tests: ExampleLocalBuilder refers to unknown identifier: LocalBuilder (govet)
func ExampleLocalBuilder() {
^
staging/src/k8s.io/component-base/metrics/desc_test.go:159:26: copylocks: call of reflect.DeepEqual copies lock value: k8s.io/component-base/metrics.Desc contains sync.RWMutex (govet)
if !reflect.DeepEqual(*descA, *descB) {
^
staging/src/k8s.io/component-base/logs/json/json_benchmark_test.go:46:6: structtag: struct field secret has json tag but is not exported (govet)
secret string `json:"secret"`
^
staging/src/k8s.io/component-base/logs/json/json_benchmark_test.go:76:6: structtag: struct field secret has json tag but is not exported (govet)
secret string `json:"secret"`
^
staging/src/k8s.io/component-base/logs/json/json_benchmark_test.go:105:6: structtag: struct field secret has json tag but is not exported (govet)
secret string `json:"secret"`
^
staging/src/k8s.io/csi-translation-lib/plugins/vsphere_volume_test.go:31:26: composites: k8s.io/api/core/v1.TopologySelectorTerm struct literal uses unkeyed fields (govet)
topologySelectorTerm := v1.TopologySelectorTerm{[]v1.TopologySelectorLabelRequirement{
^
staging/src/k8s.io/csi-translation-lib/plugins/vsphere_volume_test.go:37:40: composites: k8s.io/api/core/v1.TopologySelectorTerm struct literal uses unkeyed fields (govet)
topologySelectorTermWithBetaLabels := v1.TopologySelectorTerm{[]v1.TopologySelectorLabelRequirement{
^
staging/src/k8s.io/csi-translation-lib/plugins/vsphere_volume_test.go:43:34: composites: k8s.io/api/core/v1.TopologySelectorTerm struct literal uses unkeyed fields (govet)
expectedTopologySelectorTerm := v1.TopologySelectorTerm{[]v1.TopologySelectorLabelRequirement{
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:506:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() error = %v", err)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:509:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() annotations = %v, want %v", resp.Annotations, encLocalKEK)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:539:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() error = %v", err)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:542:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() annotations = %v, want %v", resp.Annotations, lk.encKEK)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:589:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() error = %v", err)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:592:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() annotations = %v, want %v", resp.Annotations, encLocalKEK)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:627:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() error = %v", err)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:630:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() annotations = %v, want %v", resp.Annotations, lk.encKEK)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:677:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() error = %v", err)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:680:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() annotations = %v, want %v", resp.Annotations, encLocalKEK)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:717:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() error = %v", err)
^
staging/src/k8s.io/kms/pkg/hierarchy/hierarchy_test.go:720:5: testinggoroutine: call to (*T).Fatalf from a non-test goroutine (govet)
t.Fatalf("Encrypt() annotations = %v, want %v", resp.Annotations, lk.encKEK)
^
staging/src/k8s.io/kubectl/pkg/cmd/debug/debug_test.go:451:25: composites: k8s.io/apimachinery/pkg/apis/meta/v1.Time struct literal uses unkeyed fields (govet)
CreationTimestamp: metav1.Time{time.Now()},
^
staging/src/k8s.io/kubectl/pkg/cmd/util/helpers_test.go:341:5: composites: k8s.io/apimachinery/pkg/api/errors.StatusError struct literal uses unkeyed fields (govet)
&errors.StatusError{metav1.Status{
^
staging/src/k8s.io/kubectl/pkg/cmd/util/helpers_test.go:352:5: composites: k8s.io/apimachinery/pkg/api/errors.StatusError struct literal uses unkeyed fields (govet)
&errors.StatusError{metav1.Status{
^
staging/src/k8s.io/kubectl/pkg/cmd/util/helpers_test.go:364:5: composites: k8s.io/apimachinery/pkg/api/errors.StatusError struct literal uses unkeyed fields (govet)
&errors.StatusError{metav1.Status{
^
staging/src/k8s.io/kubectl/pkg/cmd/util/helpers_test.go:374:5: composites: k8s.io/apimachinery/pkg/api/errors.StatusError struct literal uses unkeyed fields (govet)
&errors.StatusError{metav1.Status{
^
staging/src/k8s.io/kubectl/pkg/cmd/util/helpers_test.go:385:50: composites: k8s.io/apimachinery/pkg/api/errors.StatusError struct literal uses unkeyed fields (govet)
AddSourceToErr("creating", "configmap.yaml", &errors.StatusError{metav1.Status{
^
staging/src/k8s.io/kubectl/pkg/cmd/util/helpers_test.go:395:5: composites: k8s.io/apimachinery/pkg/api/errors.StatusError struct literal uses unkeyed fields (govet)
&errors.StatusError{metav1.Status{
^
staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go:204:15: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
"needle": schema.GroupVersionKind{"testgroup.k8s.io", "v1", "Kind"},
^
staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go:206:6: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
{"randomgroup.k8s.io", "v1", "OtherKind"},
^
staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go:207:6: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
{"testgroup.k8s.io", "v1", "OtherKind"},
^
staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go:208:6: composites: k8s.io/apimachinery/pkg/runtime/schema.GroupVersionKind struct literal uses unkeyed fields (govet)
{"testgroup.k8s.io", "v1", "Kind"},
^
staging/src/k8s.io/kubectl/pkg/polymorphichelpers/history_test.go:95:46: composites: k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference struct literal uses unkeyed fields (govet)
OwnerReferences: []metav1.OwnerReference{{"apps/v1", "Deployment", deployment.Name, deployment.UID, &trueVar, nil}},
^
staging/src/k8s.io/kubectl/pkg/polymorphichelpers/history_test.go:222:46: composites: k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference struct literal uses unkeyed fields (govet)
OwnerReferences: []metav1.OwnerReference{{"apps/v1", "StatefulSet", "moons", "1993", &trueVar, nil}},
^
staging/src/k8s.io/kubectl/pkg/polymorphichelpers/history_test.go:326:46: composites: k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference struct literal uses unkeyed fields (govet)
OwnerReferences: []metav1.OwnerReference{{"apps/v1", "DaemonSet", "moons", "1993", &trueVar, nil}},
^
staging/src/k8s.io/kubectl/pkg/util/i18n/i18n_test.go:143:31: loopclosure: loop variable envVar captured by func literal (govet)
defer func() { os.Setenv(envVar, envVarValue) }()
^
staging/src/k8s.io/legacy-cloud-providers/aws/aws_assumerole_provider_test.go:95:9: copylocks: range var tt copies lock: struct{name string; fields k8s.io/legacy-cloud-providers/aws.fields; want github.com/aws/aws-sdk-go/aws/credentials.Value; wantProviderCalled bool; sleepBeforeCallingProvider time.Duration; wantErr bool; wantErrString string} contains k8s.io/legacy-cloud-providers/aws.fields contains sync.RWMutex (govet)
for _, tt := range tests {
^
staging/src/k8s.io/legacy-cloud-providers/vsphere/nodemanager.go:190:5: lostcancel: the cancel function is not used on all paths (possible context leak) (govet)
ctx, cancel := context.WithCancel(context.Background())
^
staging/src/k8s.io/legacy-cloud-providers/vsphere/nodemanager.go:236:3: lostcancel: this return statement may be reached without using the cancel var defined on line 190 (govet)
}()
^
staging/src/k8s.io/pod-security-admission/policy/registry_test.go:152:35: composites: k8s.io/pod-security-admission/api.LevelVersion struct literal uses unkeyed fields (govet)
results := registry.EvaluatePod(api.LevelVersion{tc.level, versionOrPanic(tc.version)}, nil, nil)
^
staging/src/k8s.io/sample-apiserver/pkg/registry/wardle/fischer/etcd.go:50:10: composites: k8s.io/sample-apiserver/pkg/registry.REST struct literal uses unkeyed fields (govet)
return ®istry.REST{store}, nil
^
staging/src/k8s.io/sample-apiserver/pkg/registry/wardle/flunder/etcd.go:50:10: composites: k8s.io/sample-apiserver/pkg/registry.REST struct literal uses unkeyed fields (govet)
return ®istry.REST{store}, nil
^
2023-03-03 07:51:04 +01:00
Jordan Liggitt
d0a213aba2
Handle AllAlpha and AllBeta in SetFeatureGateDuringTest
2023-03-02 22:24:19 -05:00
Paco Xu
b5dbb33da9
upgrade etcd deps to v3.5.7
...
Signed-off-by: Paco Xu <paco.xu@daocloud.io>
2023-03-01 12:14:52 +08:00
Kubernetes Prow Robot
a1f4fa0b0c
Merge pull request #116141 from thockin/codegen_script_wide_vars
...
Codegen: set LC_ALL and unset GREP_OPTIONS
2023-02-28 14:54:23 -08:00
Kubernetes Prow Robot
de995809d0
Merge pull request #116130 from pohly/test-golangci-lint-improvements
...
golangci-lint improvements
2023-02-28 14:54:07 -08:00
Kubernetes Prow Robot
1efc044598
Merge pull request #116105 from thockin/codegen-15-subprojects
...
Fix codegen for older bash
2023-02-28 14:53:45 -08:00
Tim Hockin
6a09ba8f52
Codegen: set LC_ALL and unset GREP_OPTIONS
...
LC_ALL is always wanted and GREP_OPTIONS is never wanted. The `grep
--color=never` dates back to 2016, an issue with OLD grep on Macs, which
was hard to deal with when this was all Makefile magic. Now that it's a
script, we can do it simpler.
2023-02-28 10:17:52 -08:00
Patrick Ohly
fa98647a30
golangci-lint: update logcheck original-url
2023-02-28 17:22:33 +01:00
Patrick Ohly
cf2e6291d1
hack: move golangci-lint config files
...
Because the script now explicitly selects the configuration file, the files no
longer have to be in the root directory. Having them in hack without the
leading dot is better because they then have the same owners as the script and
are more visible.
The downside is that manual invocations of golangci-lint without the parameter
no longer work.
2023-02-28 17:22:31 +01:00
Patrick Ohly
2d513e1330
golangci-lint: show more information about actual invocation
...
Both env variables and parameters are relevant for users who want to invoke the
command directly or follow how it is used.
2023-02-28 17:21:52 +01:00
Kubernetes Prow Robot
6f68a13696
Merge pull request #115961 from pohly/e2e-framework-deprecate-gomega-wrappers
...
e2e framework: deprecate gomega wrappers
2023-02-28 06:27:29 -08:00
Tim Hockin
23eaa6e1e4
Fix codegen for older bash
2023-02-27 11:57:46 -08:00
Jordan Liggitt
588884dd69
Add CRD compatibility objects
2023-02-27 14:12:59 -05:00
Kubernetes Prow Robot
015e2fa20c
Merge pull request #115953 from pohly/lint-gomega
...
test: fixing + linting gomega usage
2023-02-27 00:56:20 -08:00
Patrick Ohly
181fc50f8e
e2e framework: deprecate gomega wrappers
...
All wrappers except for ExpectNoError are identical to their gomega
counterparts. The only advantage that they have is that their invocations are
shorter.
That advantage does not outweigh their disadvantages:
- cannot be used in combination with gomega.Eventually/Consistently
- not a full replacement for gomega, so we just end up using both
- don't support passing a stack offset and thus cannot be used in helper
functions
- ginkgolinter does not work for them, so sub-optimal calls like this one
are not reported:
framework.ExpectEqual(len(items), 0)
->
gomega.Expect(items).To(gomega.BeEmpty())
- developers try to make do with what's available in the framework, leading
to sub-optimal checks like this:
framework.ExpectEqual(true, strings.Contains(event.Message, expectedEventError), "Event error should indicate non-root policy caused container to not start")
->
gomega.Expect(event.Message).To(gomega.ContainSubstring(expectedEventError), "Event error should indicate non-root policy caused container to not start")
So let's remove these wrappers. As a first step they get marked as deprecated.
This enables stricter
linting (https://github.com/kubernetes/kubernetes/pull/109728 ), once enabled,
to report new code which uses them.
2023-02-23 09:51:42 +01:00
andrew_li
78c0018ca0
fix make verify ( #115871 )
2023-02-22 07:17:56 -08:00
Patrick Ohly
443b1c6c23
hack/tools: bump golangci-lint to v1.51.2
2023-02-22 07:54:20 +01:00
Kubernetes Prow Robot
e29d3229cc
Merge pull request #115272 from thockin/codegen-mocks-neg-glob
...
Fix update-mocks to use better globs
2023-02-20 09:39:49 -08:00
Davanum Srinivas
4ecb4670cc
Remove unnecessary ETCD_UNSUPPORTED_ARCH for arm64
...
we should only use this env var for `arm`, since `arm64` is fully
supported by etcd folks, let us drop this!
(ex - https://github.com/etcd-io/etcd/releases/tag/v3.5.6 )
ppc64le comment should be dropped as well
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-02-16 21:29:13 -05:00
cpanato
65230338ad
[go] Bump images, dependencies and versions to go 1.20.1
...
Signed-off-by: cpanato <ctadeu@gmail.com>
2023-02-16 13:38:32 +01:00
Sascha Grunert
a28385ebe2
Graduate KubeletTracing feature to beta
...
We now graduate `KubeletTracing` to beta, which means we enable the
feature gate per default.
Part of https://github.com/kubernetes/enhancements/issues/2831
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2023-02-14 10:05:35 +01:00
Lucas Severo Alves
6b34fafdaf
Add ctx logging involved in KS startup ( #115588 )
...
* ctx logging involved in startup
as per https://github.com/kubernetes/kubernetes/pull/111155#pullrequestreview-1283257121
* use klog.Background().Error in flag handling
* revert scheduler_perf changes
* refence issue in code comment
* enable ctx logcheck for cmd/kube-scheduler
2023-02-13 09:19:29 -08:00
Patrick Ohly
67d7f09eb8
hack/OWNERS: add pohly as reviewer and approver
...
Several files that I maintain (primarily logcheck.conf right now, but
I'm also working on golangci-lint) are in this directory. It would be
useful to have approval rights to avoid delays.
2023-02-13 16:56:14 +01:00
Kubernetes Prow Robot
e818649c10
Merge pull request #115690 from tzneal/fix-buildx-check
...
fix docker buildx check
2023-02-12 14:27:30 -08:00
Kubernetes Prow Robot
4303743736
Merge pull request #115692 from liggitt/go1.20
...
Disable unified build and static init optimization for tests
2023-02-10 18:11:30 -08:00
Kubernetes Prow Robot
0424a530a4
Merge pull request #115678 from pohly/e2e-full-reports
...
e2e: revise complete report creation
2023-02-10 15:07:29 -08:00
Jordan Liggitt
e20d77bb79
Disable unified build and static init optimization for tests
2023-02-10 17:57:56 -05:00
Todd Neal
0c99212e78
fix docker buildx check
...
In testing, docker reports an exit code of zero if --help
is passed, regardless of the subcommand
2023-02-10 14:26:15 -06:00
Patrick Ohly
3e2b26ce52
e2e: revise complete report creation
...
The previous approach was based on the observation that some Prow jobs use the
--report-dir parameter instead of the E2E_REPORT_DIR env variable. Parsing the
command line was necessary to use the --json-report and --junit-report
parameters.
But that is complex and can be avoided by triggering the creation of complete
reports in the E2E test suite. The paths are hard-coded and relative to the
report directory to keep the code simple.
There was a report that k8s-triage started processing more data after
6db4b741dd
was merged. It's unclear whether
that was because of the new <report-dir>/ginkgo_report.xml file. To avoid
this potential problem, the reports are now in a "ginkgo" sub-directory.
While at it, error checking gets enhanced:
- Create directories at the start of
the suite and bail out early if that fails.
- *All* e2e suites using the framework do this, not just test/e2e.
- Added missing error checking of truncated JUnit report writing.
2023-02-10 10:20:20 +01:00
Anish Ramasekar
b6b00e65bc
logcheck.conf: ensure that kms and value/encrypt uses structured logging
...
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2023-02-10 02:28:39 +00:00
Madhav Jivrajani
64cf942ce8
hack/tools: Bump golangci-lint version
...
Bump golangci-lint version. This version
adds support for go1.20.
This consequently also bumps the version of
staticcheck. Note that this was changed to
use master to be compatible with 1.20. This
commit reverts back to using a tagged release.
Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2023-02-06 12:27:16 +05:30
cpanato
b9ddf07a75
[go] Bump images, dependencies and versions to go 1.20
...
Signed-off-by: cpanato <ctadeu@gmail.com>
2023-02-03 22:55:24 +01:00
Jordan Liggitt
1e4a032a34
Add golang.org/x/lint to unwanted dependencies
2023-02-02 17:12:23 -05:00
Jordan Liggitt
fa66ec647d
Invoke gimme from kube::golang::verify_go_version
...
Defaults to ensuring .go-version is used
Override the go version by setting GO_VERSION=1.x
Force using the host go version with FORCE_HOST_GO=y
2023-02-01 17:03:30 -05:00
Jordan Liggitt
f6bb29c2d2
Add gimme
2023-02-01 16:34:23 -05:00
Jordan Liggitt
7cc6b724ab
Defer builds to test-cmd and test-integration targets
2023-02-01 15:35:14 -05:00
Kubernetes Prow Robot
5d4776adc1
Merge pull request #114948 from haoruan/feature-api-doc-field-linter
...
Add linter to check if api docs match field tag names
2023-01-30 16:21:09 -08:00
Mohamed Zaian
90570b7595
etcd: Update to version 3.5.7
2023-01-27 17:24:00 +01:00
Kubernetes Prow Robot
336934ab0a
Merge pull request #115243 from liggitt/host-protoc
...
Use host protoc if it is the correct version
2023-01-26 18:52:24 -08:00
Jordan Liggitt
71174aa2da
Generate proto uncontainerized if host has required protoc version
2023-01-26 18:00:10 -05:00
Jordan Liggitt
028683efe6
Add missing proto path to kube::protoc::protoc invocation
2023-01-26 18:00:09 -05:00
Jordan Liggitt
d49d988467
Allow init.sh and protoc.sh to be sourced idempotently
2023-01-26 18:00:09 -05:00
Jordan Liggitt
3548e7febe
Add helper script to install protoc
2023-01-26 18:00:08 -05:00
Jordan Liggitt
238e0226db
Check protoc version strictly
2023-01-26 18:00:06 -05:00
Tim Hockin
c3e0a0a0b3
Fix update-mocks to use better globs
...
This was fixed in other update scripts, but this one was already merged.
2023-01-23 09:20:12 -08:00
Patrick Ohly
1d79a191c2
hack: update logtools to v0.4.1
...
Contains some bug fixes, for example allowing some additional
functions when enforcing contextual logging.
2023-01-23 14:24:29 +01:00
Kubernetes Prow Robot
0fcc3dbd55
Merge pull request #115240 from thockin/codegen-9-use-ls-files
...
Use `git ls-files` in a few places instead of `find`
2023-01-23 00:26:21 -08:00
Tim Hockin
6a49eae422
Make update-netparse-cve use ls-files
2023-01-22 15:21:37 -08:00
Tim Hockin
822745512d
Make update-gofmt use ls-files
2023-01-22 15:16:23 -08:00
Kubernetes Prow Robot
91cfe7f0c3
Merge pull request #115246 from thockin/codegen-11-swagger-from-update-codegen
...
Generate swagger from update-codegen
2023-01-22 11:24:10 -08:00
Kubernetes Prow Robot
bc2fccaa96
Merge pull request #115245 from thockin/codegen-10-protobuf-from-update-codegen
...
Call update-generated-protobuf from update-codegen
2023-01-22 11:24:03 -08:00
Kubernetes Prow Robot
f09b318dda
Merge pull request #115248 from thockin/codegen-12-mocks
...
Codegen: use ls files and pre-remove gen'ed mocks
2023-01-22 05:52:02 -08:00
Tim Hockin
597d52ac10
Remove openapi files before regen
2023-01-21 17:46:22 -08:00
Tim Hockin
0a8f102497
Codegen: use ls files and pre-remove gen'ed mocks
2023-01-21 17:29:13 -08:00
Tim Hockin
1c466a8190
Generate swagger from update-codegen
...
Swagger "docs" are actually Go code, which is used by other codegen
tools, so if you really want to regen EVERYTHING, this is part of it and
sequence matters.
2023-01-21 16:51:25 -08:00
Tim Hockin
0ef664c278
Call update-generated-protobuf from update-codegen
...
Calling update-codegen.sh with no arguments runs all the functions in
definition order. Client-generation depends on protobuf, so protobuf
codegen needs to be near the beginning.
Also add some debug output for protobuf generation.
Also hide some old, verbose debug output.
2023-01-21 16:32:18 -08:00
Tim Hockin
ac2890df45
Make protobindings gen a bit safer
2023-01-21 15:17:47 -08:00
Tim Hockin
afae402865
Add debug output for protobindings generation
2023-01-21 15:17:46 -08:00
Tim Hockin
c8ce229e64
Codegen: rm protobindings
2023-01-21 15:17:45 -08:00
Tim Hockin
4dae505d53
Call update-proto-bindings from update-codegen
...
One script to bring them all ...
2023-01-21 15:17:42 -08:00
Tim Hockin
a057f35c90
Move update-generated-runtime into common script
...
Now update-generated-proto-bindings rules all the api.pb.go generation.
Running this shows no delta on the runtime.pb.go
This exposes an issue in how protoc is called for protos that specify
`go_package` which is fixed here.
Not all of our protos specify that option (even though it is
recommended), which will be fixed subsequently.
2023-01-21 15:17:14 -08:00
Tim Hockin
e0ecccff3f
Merge 5 fragile proto-bindings scripts into 1
...
Each of these scripts is basically identical, and all were too brittle.
Now they should be more resilient and easier to manage. The script
still needs to be updated if we add new ones, which I do not love.
More cleanup to follow.
2023-01-21 15:17:13 -08:00
Kubernetes Prow Robot
589300dd84
Merge pull request #115198 from thockin/codegen-7-remove-genfiles-part1
...
Codegen: remove generated files before regenerating
2023-01-21 14:34:02 -08:00
Tim Hockin
ac90c60cff
Codegen: rm informer files before regen
2023-01-21 11:39:27 -08:00
Tim Hockin
9a11efa719
Codegen: rm lister files before regen
2023-01-21 11:39:09 -08:00
Tim Hockin
bb53ed4ff6
Codegen: rm client files before regen
2023-01-21 11:38:44 -08:00
Tim Hockin
b852b36555
Codegen: rm applyconfig files before regen
2023-01-21 11:38:17 -08:00
Tim Hockin
6aea6fe86b
Codegen: rm openapi files before regen
2023-01-21 11:31:04 -08:00
Tim Hockin
7f87ecfb9a
Codegen: rm conversion files before regen
2023-01-21 11:30:42 -08:00
Tim Hockin
e149f79d4e
Codegen: rm defaults files before regen
2023-01-21 11:30:22 -08:00
Tim Hockin
3f0c3f33ca
Codegen: rm prerelease files before regen
2023-01-21 11:30:05 -08:00
Tim Hockin
07f7941de6
Codegen: rm deepcopy files before regen
2023-01-21 11:29:40 -08:00
Tim Hockin
8704337395
Codegen: rm generated proto files before regen
2023-01-21 11:27:01 -08:00
Tim Hockin
b201c08cea
Simplify find in codegen
...
The `find` tool has hard to comprehend syntax and does not consider
things excluded by .gitignore. I keep tripping over this in my own
repos, where I have __stuff which gets found.
This converts update-codegen to use `git ls-files` in a seemingly
equivalent way (`-cmo --exclude-standard`). I verified it finds the
same set of files as before.
This also drops some obsolete filtering.
Also hide grep errors for not-found files, which can happen if a file is
removed but git ls-files still knows it.
Re-running update-codegen shows no diffs.
This will make subsequent changes easier.
2023-01-21 11:22:39 -08:00
Tim Hockin
04c80d0a23
Simplify verify-codegen to use worktrees
2023-01-21 11:16:15 -08:00
Tim Hockin
7c262b901f
Set GOCACHE and GOMODCACHE
...
If these are not set, set them. This ensures that any subsequent
scripts we call (which may call setup_env again) use the same values.
2023-01-21 11:16:14 -08:00
Tim Hockin
965d5d8608
Make boilerplate.py smarter about generated
...
Don't just grep for DO NOT EDIT - anchor it in something that looks like
a comment and alone on a line.
Also ignore __* dirs
Prevent it from triggering on update-generated-swagger-docs (hack, but
better than before)
2023-01-21 11:16:13 -08:00
Tim Hockin
8fbcad4612
Call 'go install' instead of build.sh
...
The env vars are needed until go workspaces lands, then it can get
simpler.
Downsides to this:
1) If you don't call kube::golang::setup_env, it might work but will
just splat results somewhere
2) The resultant binaries are not in _output/bin but instead in the
phony GOPATH/bin (which setup_env puts in PATH)
2023-01-20 10:44:02 -08:00
Kubernetes Prow Robot
6b55f097bb
Merge pull request #114976 from kidddddddddddddddddddddd/python3
...
use python3 in hack
2023-01-19 07:24:47 -08:00
Hao Ruan
b64dcf862d
Fix the name violation in apiextensions.k8s.io/v1,CustomResourceConversion, remove the failures file
2023-01-19 22:08:29 +08:00
Tim Hockin
01e1da77e2
Fix kubelet-plugin-registration to add missing dir
...
include v1
This is far too manual for my tastes, which will be fixed subsequently.
2023-01-18 23:38:20 -08:00
Tim Hockin
4e48506245
Fix generated-pod-resources to add missing dir
...
include v1alpha1
This is too manual - will be fixed subsequently
2023-01-18 23:38:18 -08:00
Kubernetes Prow Robot
035271d89b
Merge pull request #115017 from mhmxs/conf-tmp-dir
...
Make tmp dir configurable and dynamic at local-up-cluster.sh
2023-01-18 19:02:45 -08:00
Richard Kovacs
17422ff5c1
Use proper tmp directory for update-openapi-spec.sh ( #115106 )
...
* Use proper tmp directory for update-openapi-spec.sh
* Use proper mktmp command in update-openapi-specs.sh
2023-01-18 16:06:33 -08:00
Richard Kovacs
bef16e817b
Fix lint errors at local-up-cluster.sh
2023-01-18 12:20:33 +01:00
Richard Kovacs
89539e80dc
Fix lint errors at local-up-cluster.sh
2023-01-18 11:15:38 +01:00
Richard Kovacs
be4b3c5abd
Use proper mktmp command in local-up-cluster.sh
2023-01-18 10:58:41 +01:00
Hao Ruan
2adb95c376
Add linter to check if api docs match field tag names
2023-01-18 10:49:12 +08:00
Jordan Liggitt
121088cb2a
bump honnef.co/go/tools to support go1.20
2023-01-17 10:42:55 -05:00
Kubernetes Prow Robot
3613ed04b6
Merge pull request #115079 from dims/update-to-newer-moby/ipvs-v1.1.0
...
Update to new release of moby/ipvs
2023-01-15 13:30:49 -08:00
Davanum Srinivas
d9b98bc36a
Update to new release of moby/ipvs
...
hack/pin-dependency.sh github.com/moby/ipvs v1.1.0
- go to a fixed tag for `vishvananda/netns`
- no more references to `pkg/errors`
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-01-14 16:13:24 -05:00
Alexander Zielenski
63f109e149
use --null instead of -Z in grep invocation
...
BSD grep has a different behavior from GNU grep with -Z.
--null has consistent behavior accross both implementations
2023-01-13 15:31:05 -08:00
Richard Kovacs
63982fc1fd
Display generated config file locations on successful local-up-cluster.sh execution
2023-01-12 18:06:14 +01:00
Richard Kovacs
457537a211
Make tmp dir configurable and dynamic at local-up-cluster.sh
2023-01-12 14:57:38 +01:00
kidddddddddddddddddddddd
cb6a1886c0
use python3 in hack
2023-01-12 11:20:41 +08:00
David Porter
a0916996df
Update hack/unwanted-dependencies.json
...
* Drop nvml since it is no longer used
Signed-off-by: David Porter <david@porter.me>
2023-01-11 16:07:29 -08:00
Olivier Lemasle
8b8e20fcdb
Bump kube-openapi
2023-01-11 11:48:07 +01:00
Kubernetes Prow Robot
ef2ef15476
Merge pull request #114952 from liggitt/verify-vendor-tidy
...
Improve vendor verification works for each staging repo
2023-01-10 08:55:26 -08:00
Jordan Liggitt
94ae3cbc41
Improve vendor verification works for each staging repo
2023-01-10 09:30:47 -05:00
Kubernetes Prow Robot
d8b553cce8
Merge pull request #114769 from pohly/e2e-owners-pohly
...
test/OWNERS: add pohly as approver
2023-01-09 15:11:27 -08:00
Patrick Ohly
c6da602168
OWNERS: remove sig-testing-approvers
...
It's not used enough to add any real value. Instead, it obscures the real
ownership when someone looks at an OWNERS file where it is used.
2023-01-09 09:54:10 +01:00
Paco Xu
26ddc948e1
add archived dependencies into unwanted-dependencies.json
2023-01-09 16:14:39 +08:00
Kubernetes Prow Robot
d19f8f3162
Merge pull request #114858 from acpana/acpana/fix-verify-licenses
...
fix path for not approved licenses
2023-01-05 23:15:58 -08:00
Alex Pana
124fd62ad2
fix path for not approved licenses
...
Signed-off-by: Alex Pana <8968914+acpana@users.noreply.github.com>
2023-01-05 20:19:33 +00:00
Jordan Liggitt
b774c1fb1b
Fix verify-license cleanup
2023-01-05 09:40:52 -05:00
Jordan Liggitt
cafc791aab
Fix verify-licenses script
2023-01-04 15:45:41 -05:00
Stephen Kitt
f146b4287f
Licensing: skip modules with fewer subdirs than mods
...
This came up when updating go-oidc. After updating go-oidc (with its
dependency tree), cloud.google.com/go was no longer used as a package
import, but still listed in the module dependency graph; as a result,
"go mod vendor" no longer pulled in cloud.google.com/go itself, but
update-vendor-licenses.sh still wanted a license file for it since it
appeared in the list of modules.
This scenario is already supposed to be handled: when a module doesn't
contain any *files* as first-level content, if the number of
subdirectories it contains *equals* the number of submodules it
contains (excluding itself), the module is skipped. This fails for
cloud.google.com/go because several submodules are included in the
module dependency graph but aren't actually used, and therefore not
vendored.
Updating the test to check that the number of subdirectories is less
than or equal to the number of expected submodules fixes this.
The correct fix would be to process the submodules first, keeping a
note of which ones really have content, then check that the top-level
module only contains subdirectories corresponding to those modules;
but it's not clear to me that this is worth the effort (especially in
a shell script).
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2023-01-03 16:48:35 +01:00
Kubernetes Prow Robot
7eb9a75bf9
Merge pull request #114710 from thockin/document_group-version-to-pkg-path
...
simplify group-version-to-pkg-path()
2022-12-27 13:41:28 -08:00
Kubernetes Prow Robot
24490fdd65
Merge pull request #114704 from thockin/codegen_safer_xargs
...
codegen: safer use of 'sort' and 'xargs'
2022-12-27 10:45:28 -08:00
Tim Hockin
77e41786a2
simplify group-version-to-pkg-path()
2022-12-27 10:34:44 -08:00
Kubernetes Prow Robot
e54e97294f
Merge pull request #114708 from thockin/verify_swagger_git_subtree
...
Make verify-generated-swagger-docs use worktree
2022-12-27 05:57:38 -08:00
Kubernetes Prow Robot
33e284fcd8
Merge pull request #114707 from thockin/verify_yamlfmt_git_subtree
...
Make verify-yamlfmt.sh use git worktree
2022-12-27 05:57:27 -08:00
Kubernetes Prow Robot
5e969c3568
Merge pull request #114706 from thockin/verify_mocks_git_subtree
...
Make verify-mocks.sh use git worktree
2022-12-26 22:01:27 -08:00
Tim Hockin
b5c5913db0
Make verify-generated-swagger-docs use worktree
...
Also move a function into these files that was only used in the one
place.
2022-12-26 17:17:33 -08:00
Tim Hockin
90e290e495
Make verify-yamlfmt.sh use git worktree
2022-12-26 17:14:58 -08:00
Tim Hockin
ff7ba89b1c
Make verify-mocks.sh use git worktree
2022-12-26 17:14:14 -08:00
Tim Hockin
db1f27896f
make update: Use a shell array instead of string
2022-12-26 16:24:16 -08:00
Tim Hockin
709dadb899
codegen: safer use of 'sort' and 'xargs'
...
`LC_ALL=C` is consistent regardless of locale
`xargs -0` is safe when filenames may have spaces
2022-12-26 16:08:59 -08:00
Patrick Ohly
1c66b708ec
ginkgo-e2e.sh: remove deprecated --slow-spec-threshold
...
From the warning message that ginkgo now emits:
--slow-spec-threshold is deprecated --slow-spec-threshold has been deprecated
and will be removed in a future version of Ginkgo. This feature has proved
to be more noisy than useful. You can use --poll-progress-after, instead, to
get more actionable feedback about potentially slow specs and understand
where they might be getting stuck.
We already use --poll-progress-after.
2022-12-21 07:55:07 +01:00
Patrick Ohly
6db4b741dd
e2e: dump full report information
...
The Ginkgo CLI output no longer has the full output. We need the reports
generated by Ginkgo for that.
2022-12-21 07:55:07 +01:00
Patrick Ohly
460f796bb7
e2e: fix ginkgo parameter setup
...
This is a fix for 104aab81a4
: because
the default was not set for E2E_TEST_DEBUG_TOOL, all parameters were always
also passed to the E2E suite.
That wasn't wrong for the parameters so far, but breaks when using something
like --output-dir which is only understood by the CLI.
2022-12-20 07:56:27 +01:00
Patrick Ohly
b39e56b475
e2e: fix ginkgo-e2e.sh with no arguments
...
If the script was called with no arguments, it passed "${@:-}" to the suite,
which expands to one empty argument. That's not right, "${@}" should be used
instead because it expands to nothing when empty.
2022-12-20 07:56:27 +01:00
Kubernetes Prow Robot
c6b75dac5b
Merge pull request #114204 from pacoxu/order-unwanted-deps
...
add github.com/mindprince/gonvml to unwanted dependencies
2022-12-12 11:43:56 -08:00
Kubernetes Prow Robot
92ec97149c
Merge pull request #114408 from liggitt/gorilla
...
Mark github.com/gorilla dependencies to avoid increasing use
2022-12-11 09:07:25 -08:00
Jordan Liggitt
cdebf3a64c
Mark github.com/gorilla dependencies to avoid increasing use
2022-12-10 23:54:13 -05:00
Patrick Ohly
df5d84ae81
e2e: accept context from Ginkgo
...
Every ginkgo callback should return immediately when a timeout occurs or the
test run manually gets aborted with CTRL-C. To do that, they must take a ctx
parameter and pass it through to all code which might block.
This is a first automated step towards that: the additional parameter got added
with
sed -i 's/\(framework.ConformanceIt\|ginkgo.It\)\(.*\)func() {$/\1\2func(ctx context.Context) {/' \
$(git grep -l -e framework.ConformanceIt -e ginkgo.It )
$GOPATH/bin/goimports -w $(git status | grep modified: | sed -e 's/.* //')
log_test.go was left unchanged.
2022-12-10 19:50:18 +01:00
Kubernetes Prow Robot
73849a8d28
Merge pull request #114228 from saschagrunert/kubectl-convert-static
...
Link `kubectl-convert` binary statically
2022-12-10 07:54:52 -08:00
Kubernetes Prow Robot
9d02dda241
Merge pull request #114194 from dims/add-more-validation-for-copy-paste-errors
...
Add more validation to rules.yaml
2022-12-10 07:54:10 -08:00
Kubernetes Prow Robot
01e6efcc37
Merge pull request #114180 from saschagrunert/tracing-local-up-cluster
...
Tracing: sample always in `hack/local-up-cluster.sh`
2022-12-10 07:53:48 -08:00
Kubernetes Prow Robot
565667f403
Merge pull request #113978 from liggitt/check-canonical
...
Guard against merging non-canonical replace directives
2022-12-10 00:47:39 -08:00
Sascha Grunert
8a96ed0d20
Link kubectl-convert
binary statically
...
The kubectl-convert binary itself only depends on the following runtime
libraries when linking dynamically:
```
> ldd _output/bin/kubectl-convert
linux-vdso.so.1 (0x00007ffef0786000)
libpthread.so.0 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libpthread.so.0 (0x00007f5f4ac25000)
libdl.so.2 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libdl.so.2 (0x00007f5f4ac20000)
libc.so.6 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libc.so.6 (0x00007f5f4aa00000)
/nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/ld-linux-x86-64.so.2 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib64/ld-linux-x86-64.so.2 (0x00007f5f4ac2c000)
```
We now move kubectl-convert to become a static binary as well to achieve
maximum portability.
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2022-12-01 11:23:26 +01:00
Sascha Grunert
3698434d6b
Link kube-aggregator
binary statically
...
The kube-aggregator itself only depends on the following runtime
libraries when linking dynamically:
```
> ldd _output/bin/kube-aggregator
linux-vdso.so.1 (0x00007fff1616f000)
libpthread.so.0 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libpthread.so.0 (0x00007fad9339a000)
libc.so.6 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libc.so.6 (0x00007fad93000000)
/nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/ld-linux-x86-64.so.2 => /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib64/ld-linux-x86-64.so.2 (0x00007fad933a1000)
```
We now move the kube-aggregator to become a static binary as well to
achieve maximum portability.
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2022-12-01 11:20:24 +01:00
Paco Xu
a782bd62bd
add github.com/mindprince/gonvml to unwanted dependencies for license reason
2022-11-30 15:12:04 +08:00
Paco Xu
7e9dfad2b6
sort unwanted dependencies in order
2022-11-30 14:37:53 +08:00
Davanum Srinivas
ffef2d1f1a
add more validation to rules.yaml
...
We need to better catch problems like the one we fixed in:
7b6a3d6a33
Essentially a copy-paste error where had a branch pointing to staging/src/k8s.io/code-generator instead of staging/src/k8s.io/apimachinery
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-11-29 15:07:34 -05:00
Sascha Grunert
f04bb71878
Tracing: sample always in hack/local-up-cluster.sh
...
If the feature gate `KubeletTracing` is enabled, then we should default
to a sample rate of 1 million per million, which will sample everything:
https://github.com/open-telemetry/opentelemetry-go/blob/aa868d5/sdk/trace/sampling.go#L107-L110
This helps to easier spin-up a cluster with tracing enabled by exporting
`FEATURE_GATES="KubeletTracing=true"`.
Related docs: https://k8s.io/docs/concepts/cluster-administration/system-traces/#kubelet-traces
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2022-11-29 13:12:19 +01:00
Paco Xu
75f89875f8
use etcd 3.5.6-0 after promotion
2022-11-24 09:45:56 +08:00
Brian Pursley
34d980e770
i18n: Fix bug where package-level variables are not translated.
...
The call to `i18n.LoadTranslations` needs to occur on init so
that package-level variables that call `i18n.T()` to initialize
their values will be able to receive the translated string.
Added new integration tests to test help output translation.
2022-11-21 22:48:42 -05:00
Jordan Liggitt
9cb283796f
Guard against merging non-canonical replace directives
2022-11-17 13:00:12 -05:00
Mark Rossetti
534f052a8d
Updating pause image refernces to 3.9
...
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2022-11-14 10:24:54 -08:00
Jordan Liggitt
d0e965dc0d
Add gogo libraries to unwanted dependencies
2022-11-12 14:35:16 -05:00
Kubernetes Prow Robot
29ddedae1d
Merge pull request #113541 from oscr/update-shellcheck-0.8.0
...
Update shellcheck version (0.7.2 -> 0.8.0) and fix findings
2022-11-12 02:23:57 -08:00
Kubernetes Prow Robot
bd878fe5b3
Merge pull request #113818 from liggitt/deps
...
Update unwanted dependencies list
2022-11-11 18:49:55 -08:00
Patrick Ohly
7b6e911502
dependencies: forbid problematic dependencies of CDI + runtime-tools
...
github.com/container-orchestrated-devices/container-device-interface and
github.com/opencontainers/runtime-tools depend on some problematic packages in
code that isn't used by Kubernetes. Explicitly listing those dependencies
ensures that they do not get pulled in accidentally.
2022-11-12 00:17:17 +01:00
Ed Bartosh
ae0f38437c
kubelet: add support for dynamic resource allocation
...
Dependencies need to be updated to use
github.com/container-orchestrated-devices/container-device-interface.
It's not decided yet whether we will implement Topology support
for DRA or not. Not having any toppology-related code
will help to avoid wrong impression that DRA is used as a hint
provider for the Topology Manager.
2022-11-11 21:58:03 +01:00
Patrick Ohly
c34185b2e5
logcheck.conf: ensure that dra uses contextual logging
...
It's new code, so we should follow the latest recommendations for logging.
2022-11-10 20:23:50 +01:00
Patrick Ohly
5cca60f0b8
api: dynamic resource allocation API
...
This adds a new resource.k8s.io API group with v1alpha1 as version. It contains
four new types: resource.ResourceClaim, resource.ResourceClass, resource.ResourceClaimTemplate, and
resource.PodScheduling.
2022-11-10 20:08:24 +01:00
Jordan Liggitt
3678584c02
Update unwanted dependencies list
2022-11-10 08:22:54 -05:00
Kubernetes Prow Robot
c9d87a9f7c
Merge pull request #113635 from andrewsykim/remove-ignore-cloud-provider-taint-envvar
...
cluster: remove KUBE_TEST_IGNORE_CLOUDPROVIDER_TAINT which is no longer needed
2022-11-09 08:30:37 -08:00
Oscar Utbult
61cd37b806
Update shellcheck version (0.7.2 -> 0.8.0) and fix findings
2022-11-08 11:53:57 +01:00
Kubernetes Prow Robot
595ea32411
Merge pull request #113314 from cici37/celIntegration
...
CEL validation in Admission chain
2022-11-07 17:08:33 -08:00
Cici Huang
0486e06261
Adding new api version of admissionregistration.k8s.io v1alpha1 for CEL in Admission Control
2022-11-07 20:51:51 +00:00
Andrew Sy Kim
ae1e93bfbe
remove TEST_IGNORE_CLOUDPROVIDER_TAINT from hack/ginkgo-e2e.sh
...
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-05 22:04:37 -04:00
Kubernetes Prow Robot
63a62defda
Merge pull request #113604 from moshe010/cni-arch
...
fix local-up-cluster.sh to run on other arch than amd64
2022-11-04 09:36:47 -07:00
Moshe Levi
c337d7b6f9
fix local-up-cluster.sh to run on other arch than amd64
...
tested on arm64
Signed-off-by: Moshe Levi <moshele@nvidia.com>
2022-11-03 21:39:09 +02:00
Sascha Grunert
f9707064cf
Remove CRI v1alpha2
...
After the removal of dockershim we can finally also drop support for CRI
v1alpha2.
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2022-11-03 09:13:43 +01:00
Oscar Utbult
421f142ffc
Update shellcheck version (0.7.1 -> 0.7.2) and fix findings
2022-11-01 23:10:44 +01:00
Jordan Liggitt
f488c67eb5
Fix unwanted dependencies scanner
2022-10-28 15:15:20 -04:00
Jordan Liggitt
cad5058200
Stop adding requires for everything in the graph
2022-10-28 15:15:18 -04:00
Jordan Liggitt
a82d2b9e08
Stop adding explicit replace directives for all requires
...
This was originally added in the early days of go.mod in order to ensure that the root k8s.io/kubernetes
go.mod file reflected all the versions of dependencies we were using, and to ensure that go commands didn't spuriously
increment these versions.
With module pruning in go1.17+ and go defaulting to mod=readonly mode in go1.16+, this is no longer necessary.
2022-10-28 15:15:18 -04:00
Wei Huang
3115c5ba59
update scheduler config version to v1
2022-10-22 09:06:55 -07:00
Kubernetes Prow Robot
1c372121bb
Merge pull request #113214 from pohly/e2e-ginkgo-invocation-fix
...
hack: pass several Ginkgo parameters to the CLI instead of the test binary
2022-10-21 13:57:57 -07:00
Patrick Ohly
104aab81a4
hack: pass Ginkgo arguments more intelligently
...
Most parameters can be passed to both the CLI and the suite, but some
(for example, --ginkgo.slow-spec-threshold) had no effect when only
passed to the suite.
2022-10-21 19:57:53 +02:00
Kubernetes Prow Robot
98533290e9
Merge pull request #113229 from BenTheElder/more-shell-tidy
...
more shellcheck cleanups
2022-10-20 22:25:50 -07:00
Benjamin Elder
bf3df26efd
disable SC2120 on functions with optional parameters
...
https://www.shellcheck.net/wiki/SC2120#exceptions
2022-10-20 16:22:11 -07:00
Benjamin Elder
239b3338e9
idiomatically check for empty variable
2022-10-20 16:22:10 -07:00
Kubernetes Prow Robot
f33ddd1b9c
Merge pull request #113210 from dims/ensure-we-are-using-gnu-date-for-builds
...
Ensure we are using GNU date for builds
2022-10-20 14:51:22 -07:00
Kubernetes Prow Robot
dc3c9c0101
Merge pull request #113202 from oscr/update-golangci-lint
...
hack/tools: update golangci-lint version (1.48.0 -> 1.50.0)
2022-10-20 08:57:15 -07:00
Davanum Srinivas
ec71e53adb
Ensure we are using GNU date for builds
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-10-20 10:12:23 -04:00
Oscar Utbult
de1fff9afa
hack/tools: update golangci-lint version (1.48.0 -> 1.50)
2022-10-20 13:51:10 +02:00
Kubernetes Prow Robot
687b001648
Merge pull request #113190 from BenTheElder/shell-fixups
...
assorted small shell script fixes
2022-10-20 03:34:57 -07:00
Benjamin Elder
49354dc645
fix iterating over files in hack/verify-generated-swagger-docs.sh
2022-10-19 23:46:18 -07:00
Benjamin Elder
95d08c58e3
avoid masking return values in hack/make-rules/make-help.sh
2022-10-19 23:46:18 -07:00
Benjamin Elder
f72938f2d4
disable SC 1091
...
see: https://www.shellcheck.net/wiki/SC1091
2022-10-19 23:46:18 -07:00
Benjamin Elder
103e6cdd3c
declare and assign seperately in hack/verify-e2e-test-ownership.sh
2022-10-19 23:46:18 -07:00
Benjamin Elder
94c0ec317b
Don't assign DOCKER an array in hack/lib/util.sh
...
DOCKER is otherwise used to be the command name (perhaps podman), but we were conflating DOCKER_OPTS in kube::util::ensure_docker_daemon_connectivity.
Split out docker opts.
This fixes shellcheck warning that docker is assigned an array and then a string in some scripts.
2022-10-19 23:46:18 -07:00
Benjamin Elder
8f6c631772
fix readonly masks return value in test.sh
2022-10-19 21:53:45 -07:00
Kubernetes Prow Robot
a2827c4915
Merge pull request #111978 from Jefftree/aggregated-discovery-types
...
Aggregated discovery types
2022-10-19 13:57:07 -07:00
Jefftree
2e01fbb59a
Add discovery types
2022-10-19 17:27:25 +00:00
Han Kang
3d3ac6ad72
add buckets.go to prometheus import allowlsit
...
Change-Id: Ifd497f93614536fdcf3bc7d73505d322bf57f123
2022-10-18 13:42:28 -07:00
Kubernetes Prow Robot
2126509ab2
Merge pull request #111339 from chendave/debugoptions
...
e2e: Remove ginkgo option `output-interceptor-mode`
2022-10-17 03:35:09 -07:00
Kubernetes Prow Robot
6f579d3ceb
Merge pull request #111616 from ndixita/credential-api-ga
...
Move the Kubelet Credential Provider feature to GA and Update the Credential Provider API to GA
2022-10-15 07:53:09 -07:00
Jordan Liggitt
dd0910691f
Move root approvers to subdirs
2022-10-10 13:43:03 -04:00
Jordan Liggitt
b8b86bb2e1
Sort subdir OWNERS files
2022-10-10 08:31:43 -04:00
Jordan Liggitt
04b178b49b
Make root approval non-recursive
2022-10-10 08:26:53 -04:00
Walter Fender
4f6894d206
Adding flag for testing to ignore cloud provider taint.
...
Adding the ability to ignore no schedule flags in testing.
Specifically node.cloudprovider.kubernetes.io/uninitialized:NoSchedule
Fix shellcheck complaint.
2022-10-06 10:54:35 -07:00
Kubernetes Prow Robot
4a894be926
Merge pull request #112866 from BenTheElder/em
...
emeritus fejta
2022-10-05 10:14:04 -07:00
Kubernetes Prow Robot
4e3b3764ff
Merge pull request #112864 from BenTheElder/nobzl
...
remove more lingering bazel references
2022-10-04 20:42:03 -07:00
Benjamin Elder
cee4ee074d
emeritus fejta, Erick is inactive after leaving google for spaceX
2022-10-04 17:07:35 -07:00
Tim Hockin
5da7ca9b0f
Clean up detritus from generaed_files
...
Now that tests are fixed, it should be OK to remove these.
2022-10-04 17:04:49 -07:00
Benjamin Elder
23cdaa2ee7
remove clearly unnecessary lingering bzl file references
2022-10-04 16:47:39 -07:00
Benjamin Elder
db9c760ee7
remove clearly unnecessary lingering BUILD file references
2022-10-04 16:47:25 -07:00
Tim Hockin
1c65dc535f
Remove refs to .make
2022-10-04 08:58:52 -07:00
Tim Hockin
d8988801c2
Remove old make-helper script
2022-10-04 08:58:46 -07:00
Tim Hockin
48b5b0c238
Remove go2make
2022-10-04 08:50:32 -07:00
Tim Hockin
e477d45f56
Neutralize obsolete verify scripts
...
This is all obsolete or covered by verify-codegen now.
2022-10-04 08:50:31 -07:00
Tim Hockin
70c1c795e8
Remove generated file rules in make
...
This is all covered by update-codegen.sh now.
The old `make generated_files` rule still exists, but just prints a
warning.
2022-10-04 08:50:30 -07:00
Tim Hockin
7afaf23b01
Copy make's codegen logic to update-codegen.sh
...
The `make` rules which auto-generate some of our API stuff are
incredibly baroque, and hard to maintain. They were originally added on
the assumption that we would stop checking generated files into git.
Since then we have moved away from that goal, and the worst problems
with generated files have been resolved.
Reasons to kill this:
* It is slow on every build, as opposed to just being slow when running
the generators. It is even slow to calculate that there's nothing to
update.
* Most development work doesn't involve changing APIs.
* It only covers about half (or less) of the generated code, and making
it cover more would be even slower.
* Approximately 1 person knows how this all works.
* We have CI to make sure changes do not get merged without updating
this code.
* We have corner cases where this does the WRONG thing and tracking
those down is ugly and hard in perpetuity.
So this commit puts all the same logic that WAS in the
Makefile.generated_files into update-codegen.sh.
I do not love this script, especially WRT sub-packages, but I am trying
not to boil the ocean. I hope to follow up with some more cleanups over
time.
I have tested this manually and with the scripts and it still seems to
catch errors properly.
This includes a change to kube::util::read-array to make it not unset
variables and not over-write non-array variables.
2022-10-04 08:48:39 -07:00
Tim Hockin
b52b50bcea
update-codegen: reorder some lines for later diffs
2022-10-04 08:45:57 -07:00
Tim Hockin
89e0e09eb9
Format calls to codegens
...
No functional changes here,just formatting. Makes future commits
easier.
2022-10-04 08:45:57 -07:00
Patrick Ohly
9b5e9d8978
update-vendor.sh: add reminder about LICENSE files
...
The script might have added or removed LICENSE files. Those changes also need
to be added manually to a commit.
2022-10-04 12:39:05 +02:00
Patrick Ohly
f737c5d341
update-vendor.sh: handle empty staging repo
...
A staging repo which just got created with only the doc.go file in it won't
have any dependencies yet, which caused the script to fail because the
dependency files didn't get created:
+++ [0926 14:33:22] go.mod: tidying
cat: /tmp/update-vendor.1VTv/group_replace.ZbIT/go.mod.require_direct.tmp: No such file or directory
!!! [0926 14:33:23] Call tree:
!!! [0926 14:33:23] 1: hack/update-vendor.sh:354 group_directives(...)
2022-10-04 12:37:15 +02:00
Kubernetes Prow Robot
9720af2ba3
Merge pull request #112306 from tkashem/v1beta3
...
add v1beta3 for Priority And Fairness
2022-10-03 10:06:14 -07:00
Wojciech Tyczyński
57c95fbfa1
Lock ServerSideApply feature to true
2022-09-27 13:48:28 +02:00
Kubernetes Prow Robot
a54d8d8add
Merge pull request #111980 from aramase/kms
...
Add staging directory for kms
2022-09-26 14:50:14 -07:00
Anish Ramasekar
c3794e2377
Add staging directory for kms
...
- Moves kms proto apis to the staging repo
- Updates generate and verify kms proto scripts to check staging repo
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2022-09-26 19:23:35 +00:00
Kubernetes Prow Robot
dfa4143086
Merge pull request #112724 from dims/update-instructions-to-install-cfssl
...
Update instructions to install cfssl
2022-09-26 09:20:38 -07:00
Davanum Srinivas
5fd6b0a980
Update instructions to install cfssl
...
Use the newer "go install" variant as we are above go 1.18
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-09-25 15:53:02 -04:00
Davanum Srinivas
866ef3c46e
run hack/update-vendor.sh
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-09-24 13:27:13 -04:00
Davanum Srinivas
837d3b4ca2
drop scripts and files related to linkcheck
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-09-23 13:55:45 -04:00
Abu Kashem
e1a764d635
apiserver: enable v1beta3 for apf
2022-09-21 18:54:19 -04:00
Kubernetes Prow Robot
6dbec8e255
Merge pull request #112120 from pohly/klog-flag-removal
...
logs: remove deprecated klog flags
2022-09-21 00:44:53 -07:00
Kubernetes Prow Robot
25b93a607a
Merge pull request #112352 from pohly/e2e-ginkgo-progress
...
e2e: better ginkgo progress reports
2022-09-19 01:04:32 -07:00
Patrick Ohly
b4e0804764
e2e: poll state of test
...
The new support in ginkgo for progress reports while a test runs dumps
information about where a test is stuck when it runs too long. This can provide
additional insights into what the test is waiting for.
For the Kubernetes jobs using ginkgo-e2e.sh, such dumps are now enabled after
300 seconds and then get repeated every 20 seconds. The initial delay is
intentionally the same as for warning about a slow test. The rationale is that
such test runtimes are unexpected and may need further information to diagnose
why they are slow.
With -ginkgo.source-root, Ginkgo is able to locate the Kubernetes source code
and display small source code snippets for functions that are related to the
test, determined through a heuristic that assumes that all files under the test
suite are for the tests in it.
2022-09-18 10:11:22 +02:00
Davanum Srinivas
0f6b9b883c
etcd: Updated to v3.5.5
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-09-15 21:05:13 -04:00
Dave Chen
3db3ad0778
e2e: Remove ginkgo option output-interceptor-mode
...
Set intercept mode to none will help to reveal more information when the
test hangs,
- https://github.com/onsi/ginkgo/issues/970
or circumvent cases where the code grabbing the stdout/stderr pipe
is not under the framework control and may cause hangs,
- https://github.com/onsi/ginkgo/issues/851
The flag `output-interceptor-mode` is set to `none` as we were trying to
figure out of the rootcase of the test flaky, it's only intended for debugging.
- https://github.com/kubernetes/kubernetes/issues/111086
But this set also has some side effect, since it will turn off stdout/stderr
capture completely, any output to stdout/stderr will be lost.
Now that the root cause is not caused by Ginkgo bump nor how the intercept
mode was set, we'd better to follow the default value.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-09-15 10:01:07 +08:00
m.nabokikh
00dfba473b
Add auth API to get self subject attributes
...
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
2022-09-14 18:00:26 +02:00
Jordan Liggitt
a9fd8a8a46
Prune unused root replace directives
2022-09-13 09:30:26 -04:00