Commit Graph

9762 Commits

Author SHA1 Message Date
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