k3s/cmd
Kubernetes Submit Queue e732ee70f4 Merge pull request #38406 from liggitt/remove-internal-json-annotations
Automatic merge from submit-queue

Remove json serialization annotations from internal types

fixes #3933

Internal types should never be serialized, and including json serialization tags on them makes it possible to accidentally do that without realizing it.

fixes in this PR:

* types
  * [x] remove json tags from internal types
  * [x] fix references from serialized types to internal ObjectMeta
* generation
  * [x] remove generated json codecs for internal types (they should never be used)
* kubectl
  * [x] fix `apply` to operate on versioned object
  * [x] fix sorting by field to operate on versioned object
  * [x] fix `--record` to build annotation patch using versioned object
* hpa
  * [x] fix unmarshaling to internal CustomMetricTargetList in validation
* thirdpartyresources
  * [x] fix encoding API responses using internal ObjectMeta
* tests
  * [x] fix tests to use versioned objects when checking encoded content
  * [x] fix tests passing internal objects to generic printers

follow ups (will open tracking issues or additional PRs):
- [ ] remove json tags from internal kubeconfig types (`kubectl config set` pathfinding needs to work against external type)
- [ ] HPA should version CustomMetricTargetList serialization in annotations
- [ ] revisit how TPR resthandlers encoding objects
- [ ] audit and add tests for printer use (human-readable printer requires internal versions, generic printers require external versions)
- [ ] add static analysis tests preventing new internal types from adding tags
- [ ] add static analysis tests requiring json tags on external types (and enforcing lower-case first letter)
- [ ] add more tests for `kubectl get` exercising known and unknown types with all output options
2016-12-10 14:00:17 -08:00
..
clicheck autogenerated 2016-10-21 17:32:32 -07:00
gendocs autogenerated 2016-10-21 17:32:32 -07:00
genkubedocs autogenerated 2016-10-21 17:32:32 -07:00
genman autogenerated 2016-10-21 17:32:32 -07:00
genslateyaml Tool to generate yaml representation of the kubectl help text 2016-11-15 15:31:56 -08:00
genswaggertypedocs autogenerated 2016-10-21 17:32:32 -07:00
genutils autogenerated 2016-10-21 17:32:32 -07:00
genyaml Fix some lint errors. 2016-11-12 21:25:09 -08:00
hyperkube Rename master/options/{APIServer -> ServerRunOptions} 2016-10-31 10:55:19 +01:00
kube-apiserver Merge pull request #38119 from liggitt/long-running 2016-12-06 18:29:35 -08:00
kube-controller-manager separate controller initialization for easy controllers 2016-12-07 09:00:53 -05:00
kube-discovery print log error 2016-10-31 09:43:11 +08:00
kube-dns kubedns: use initial resource listing as ready signal 2016-12-06 20:53:59 -08:00
kube-proxy Update bazel files 2016-12-09 09:42:02 +01:00
kubeadm Merge pull request #38406 from liggitt/remove-internal-json-annotations 2016-12-10 14:00:17 -08:00
kubectl Move pkg/kubectl reviewers into an alias 2016-10-28 14:54:17 -07:00
kubelet Merge pull request #37783 from brendandburns/acr 2016-12-09 23:52:41 -08:00
kubemark run hack/update-all.sh 2016-11-23 15:53:09 -08:00
kubernetes-discovery Merge pull request #38371 from wojtek-t/get_options_in_client 2016-12-09 04:12:09 -08:00
libs/go2idl Update bazel 2016-12-09 16:26:06 -05:00
linkcheck replace HTTP code with HTTP status code const 2016-11-23 15:12:58 +08:00
mungedocs Update the latestReleaseBranch to release-1.5 in the munger. 2016-11-05 19:56:24 -07:00
OWNERS