Lwkd.info - Week Ending July 28, 2019

Developer News

A bunch of deprecated APIs will be removed in the 1.16 release. Three of these are extensions/v1beta1 versions of APIs that now have individual v1beta1 APIs. The Apps workloads (DaemonSet et al) have been v1 for a while, so are dropping their Beta APIs. If your cluster has been in production for more than 6 months, you will almost certainly need to update your Kubernetes deployment files for 1.16.

Speaking of cleaning up YAML files: Conftest is a tool that uses CNCF Open Policy Agent to test your Kubernetes YAML and JSON configs against arbitrary rules that you set. This lets you dry-run your Kube configs against company/team standards (as well as making sure they’re valid), as well as checking for things like API compatibility.

Release Schedule

Next Deadline: Enhancements Freeze, July 30th.

Tuesday is the Enhancements Freeze, so it’s your last chance to update those KEPs and feature listings for 1.16, before you have to file an exception. Alpha 2 will also come out. There are no patch releases scheduled this week.

Featured PRs

#77284: Even Pods Spread

After last week’s initial merge, this week saw a number of additional PRs (#77760, #77828, #79062, #79063) to get the Even Pods Spread feature mostly ready for 1.16. The idea of this system is to allow better topology control in complex environments where the Pod-level affinity and anti-affinity options are not enough to achieve the desired layout. PR #80011 is still open with integration tests, but the implementation should be ready to experiment with today.

#79992: add protection for reserved API groups

An implementation of enhancements#1111, this PR requires all CRDs in the [k8s.io](http://k8s.io) and [kubernetes.io](http://kubernetes.io) namespaces to be marked an annotation linking to the ticket where they were approved. This should avoid accidentally pushing out new APIs that have not gone through the full review process and will hopefully improve API consistency.

#79983: persistent and ephemeral csi volumes

As CSI moves closer to taking over the universe, a previously underserved use case was plugins supporting both ephemeral and persistent modes. This exposes the volume mode down to the driver so that it can select the appropriate implementation.

test-infra#13648: Enable GOPROXY in default preset

Slightly jumping the gun as the PR was merged today, but it’s impact will hopefully be immediate and excellent. GOPROXY=[https://proxy.golang.org](https://proxy.golang.org) will now be set for all Kubernetes Prow jobs. This will improve both download speed and reliability for any project using Go modules, by routing module download requests through a caching proxy located on the same network. Thanks to Google for offering the proxy service to our community (and beyond)!

Other Merges

Deprecated

See Developer News above

Version Updates