This replaces the experimental logr v0.4 with the stable v1.1.0
release. This is a breaking API change for some users because:
- Comparing logr.Logger against nil is not possible anymore:
it's now a struct instead of an interface. Code which
allows a nil logger should switch to *logr.Logger as type.
- Logger implementations must be updated in lockstep.
Instead of updating the forked zapr code in json.go, directly using
the original go-logr/zapr is simpler and avoids duplication of effort.
The updated zapr supports logging of numeric verbosity. Error messages
don't have a verbosity (= always get logged), so "v" is not getting
added to them anymore.
Source code logging for panic messages got fixed so that it references
the code with the invalid log call, not the json.go implementation.
Finally, zapr includes additional information in its panic
messages ("zap field", "ignored key", "invalid key").
This updates the k8s.io/util to pull in the fix for
https://github.com/kubernetes/kubernetes/issues/104452.
Commands run:
./hack/pin-dependency.sh k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a
./hack/update-vendor.sh
So we can move off of the apimachinery clock package.
Switch queueset to new clocks.
Removed event clocks based on apimachinery clocks,
because this PR introduces ones based on k8s.io/utils/clock .
Removed interface that is implemented by only one interesting type.
Simplify RealEventClock::EventAfterTime.
The new releases of klog (via klogr) and logr expose support for call
traces via a new WithCallDepth API in logr.
The new klogr can be configured to pass structured log entries into
klog instead of turning them into a single text message.
Includes the following changes to kernel validation:
- add required options: CGROUP_PIDS, FAIR_GROUP_SCHED
- add optional options: CFS_BANDWIDTH, CGROUP_HUGETLB
* Creates staging directory for common controller-manager code
* Adds the following initial files to this directory:
* .github/PULL_REQUEST_TEMPLATE.md
* code-of-conduct.md
* LICENSE
* OWNERS
* README.md
* SECURITY_CONTACTS
* Code committed to the controller-manager staging directory will be published to: https://github.com/kubernetes/controller-manager
Initial approval deads2k (sig-api-machinery chair)
The config we would expect any controller manager to need to connect to the API server, set up metrics endpoints, create per-controller-loop API clients, and spin up the individual loops could make sense under a k8s.io/controller-manager package.
Then cmd/kube-controller-manager could continue to contain the weirdnesses specific to kube-controller-manager.
This is similar to the way we split out recommended API server setup into k8s.io/apiserver and tried to limit kube-apiserver oddities to cmd/kube-apiserver and pkg/kubeapiserver
Removed extraneous release reference. Ran update-vendor.
Fixed Readme.
Added a doc.go to staging/controller-manager
Fix package to not have dash.
```
NONE
```
/kind cleanup
/sig api-machinery
/area kube-controller-manager
/area cloud-controller-manager