kubectl never loads kustomize Go plugins. With cgo, the std plugin
package makes the linker treat the binary as dynamically linking Go and
keep every method, exported or not. kubectl built on darwin with cgo:
60.8 MB to 56.8 MB. Static release builds are unchanged.
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
Add kubelet to KUBE_STATIC_BINARIES so it is built without CGO by
default, like all other core Kubernetes binaries. This eliminates
the glibc version dependency, improving portability across Linux
distributions.
To restore the previous behavior (CGO enabled):
Regular builds:
KUBE_CGO_OVERRIDES=kubelet make WHAT=cmd/kubelet
E2e node tests:
KUBELET_CGO_ENABLED=1 make test-e2e-node
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
to new lifecycle group
- EvictionRequest is managed by a requester
- Eviction is managed by the evictionrequest-controller
- add storage, strategy, printers and validation
The local-up-cluster.sh script was used as proxy for controlling the etcd
lifecycle because the script was using a helper function that didn't support
dry-run mode. That approach was flawed in several ways, causing etcd to be left
running:
- Cmd.Stop wasn't actually called for the script by Cluster.Stop.
- If it had been called, the additional output during shutdown wouldn't
have been processed, which might have caused the command to block instead
of terminating (untested).
- It's unclear whether the script would have handled the signal properly.
A cleaner approach is to enable dry-run mode also in etcd .sh and then let
Cluster manage it like any other long-running process. Then we can let
local-up-cluster.sh terminate when it's done with its work. Cluster.Start can
check it's result immediately.
* Drop WorkloadRef field and introduce SchedulingGroup field in Pod API
* Introduce v1alpha2 Workload and PodGroup APIs, drop v1alpha1 Workload API
Co-authored-by: yongruilin <yongrlin@outlook.com>
* Run hack/update-codegen.sh
* Adjust kube-scheduler code and integration tests to v1alpha2 API
* Drop v1alpha1 scheduling API group and run make update
---------
Co-authored-by: yongruilin <yongrlin@outlook.com>
Port 0 lets the OS assign a random free port, avoiding conflicts
when running multiple etcd instances for parallel tests. Peering
is unused in single-node test setups.
`make` was printing the following warning on Ubuntu 25.10,
which switched away from GNU coreutils to uutils:
```
!!! [1107 12:46:24] Failed to find GNU date as date or gdate. If you are on Mac: brew install coreutils.
<GOPATH>/src/k8s.io/kubernetes/hack/lib/version.sh: line 166: DATE: unbound variable
```
Fix issue 135210
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
https://www.shellcheck.net/wiki/SC2153
this is not a mispelling of KUBE_OUTPUT_SUBPATH, the unprefixed version is an optional override which sets _KUBE_OUTPUT_SUBPATH, which is handled in hack/lib/init.sh where golang.sh is sourced