Last Week in Kubernetes Development: Week Ending February 21, 2021

Developer News

SIG-CLI is proposing to have kubectl use $HOME/.config instead of its own configuration directory in $HOME/.kube, to follow the XDG base directory spec (and make it easier to back up your config with everything else on your dekstop). If you like this idea, or don’t, comment on the KEP.

Test-Infra has standardized how reviews interact with LGTM and Approve across all Kubernetes repos owned by SIG-Testing.

SIG-Instrumentation plans to have all components on structured logging for 1.21 and mark the feature Beta.

Release Schedule

Next Deadline: March 1, Feature Blog inclusion

If your SIG or team has interesting features in this release, please contact the 1.21 Comms Team to have them added to the release blog post. And remember: Code Freeze Is Coming March 9.

Updates 1.18.16, 1.19.8, and 1.20.4 came out last week. This update fixes a number of bugs (lots of bugfix cherry-picks to 1.18 and 1.19 from issues fixed in later versions), but no CVEs. 1.20.3 had to be re-released as 1.20.4 after it failed some conformance tests; please do not use 1.20.3.

Featured PRs

#98845: hack: Use zeitgeist instead of cmd/verifydependencies

The venerable cmd/verifydependencies tool has been replaced by a new system: Zeitgeist. Owned by SIG-Release, Zeitgeist is a more generic tool for tracking dependencies. It supports all the same Go and Docker options as before, but also Helm charts and AWS AMIs, with more to come. If there is something external to the project that it would be good to track the version of, please reach out to the Zeitgeist team.

#99120: Use golangci-lint to find unused/dead code (Experimental!)

Another dev tooling PR, but this time even more in flux. As a first step towards replacing a lot of our home-grown linter tooling with golangci-lint, this PR adds a hack/verify-golangci-lint.sh script. This script is not used by CI yet, but you can try it out locally and see how it works. If you’re doing any kind of large refactoring, maybe give this new linter a try and see if it finds any issues (or at least find out if it can run successfully or not).

(#96878: Enable kubectl-get to strip managed fields)[https://github.com/kubernetes/kubernetes/pull/96878]

With the (wonderful) proliferation of Server Side Apply to more API calls and tools, the tracking metadata in metadata.managedFields has been getting increasingly verbose. Starting from 1.21, kubectl get -o yaml/json will no longer include these by default. If you do need the full object for whatever reason, make sure you add --show-managed-fields to your command line options. Pay special attention to things like CI scripts which might be doing get | sed | apply style changes.

Other Merges

Structured Logging tally: nodestatus, pod/pleg logs, scheduling queue

Promotions

Deprecations/Removals

Version Updates

Original Source: Week Ending February 21, 2021 | Last Week in Kubernetes Development