Merge pull request #5818 from justinsb/new_kubernetes_version

docs: create checklist for new kubernetes version
This commit is contained in:
Kubernetes Prow Robot 2019-03-17 03:14:56 -07:00 committed by GitHub
commit 129d3fa6cb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 51 additions and 0 deletions

View File

@ -0,0 +1,51 @@
## Checklist for a new kubernetes version
### Update bazel rules_go / rules_docker / gazelle etc
### Run gazelle
```bash
make bazel-gazelle
```
### Check go version used in k/k
### Update base images
### Update dependencies (apimachinery etc)
This is by far the most painful bit of the process. First you have to persuade dep to update dependencies, and then you'll have to make code changes.
For dep, you'll probably have to remove some imports to any packages that have
been removed, otherwise dep will ignore your Gopkg.toml. The path forward here
is to use vgo (also known as go), which has a much better model.
You'll then have to fix any changed code. This is gradually getting better, but will be better if we:
* Stop using apimachinery / codegen and switch to CRDs / cluster-api
* Stop vendoring functionality from kubernetes/kubernetes - this is also gradually getting better.
### Update docker version installed by default
### Check CNI version
Sources:
* [kube-up](https://github.com/kubernetes/kubernetes/blob/master/cluster/gce/gci/configure.sh#L27)
### Check admission plugins
Sources:
* https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#is-there-a-recommended-set-of-admission-controllers-to-use
* https://github.com/kubernetes/kubernetes/blob/master/cluster/gce/config-default.sh)
### Check for new deprecated flags
Review the e2e test output, looking for the artifacts from kube-apiserver, kubelet, kube-scheduler etc
e.g. Flag --address has been deprecated, see --insecure-bind-address instead.
Flag --insecure-port has been deprecated, This flag will be removed in a future version.
### Check for major new features (that are in beta or GA, not alpha)
### Check for new aws-sdk-go library (if we want to go newer than k8s)