Commit Graph

42684 Commits

Author SHA1 Message Date
Jordan Liggitt
31136b6f19
Update translation bindata 2017-01-27 09:56:52 -05:00
Kubernetes Submit Queue
4447290096 Merge pull request #40389 from smarterclayton/use_meta
Automatic merge from submit-queue (batch tested with PRs 39223, 40260, 40082, 40389)

Use metav1.*Options in genericapiserver

Treat DeleteOptions as unversioned in metainternalversion for decoding
of bodies from older clients. Use the metav1 Options structs from
generic api server and the appropriate codec.

Completes the move to using generic server side code for API objects

@sttts
2017-01-27 05:41:49 -08:00
Kubernetes Submit Queue
70d6f7a2f7 Merge pull request #40082 from vwfs/update_go_autorest
Automatic merge from submit-queue (batch tested with PRs 39223, 40260, 40082, 40389)

Update go-autorest library to v7.2.3

To include https://github.com/Azure/go-autorest/pull/107
Improves https://github.com/kubernetes/kubernetes/issues/35180

CC: @colemickens
2017-01-27 05:41:48 -08:00
Kubernetes Submit Queue
1625150de8 Merge pull request #40260 from liggitt/kubectl-tpr
Automatic merge from submit-queue (batch tested with PRs 39223, 40260, 40082, 40389)

make kubectl generic commands work with unstructured objects

part of making apply, edit, label, annotate, and patch work with third party resources

fixes #35149
fixes #34413

prereq of:
https://github.com/kubernetes/kubernetes/issues/35496
https://github.com/kubernetes/kubernetes/pull/40096

related to:
https://github.com/kubernetes/kubernetes/issues/39906
https://github.com/kubernetes/kubernetes/issues/40119

kubectl is currently decoding any resource it doesn't have compiled-in to a ThirdPartyResourceData struct, which means it computes patches using that struct, and would try to send a ThirdPartyResourceData object to the API server when running `apply`

This PR removes the behavior that decodes unknown objects into ThirdPartyResourceData structs internally, and fixes up the following generic commands to work with unstructured objects

- [x] apply
  - [x] decode into runtime.Unstructured objects
  - [x] successfully use `--record` with unregistered objects 
- [x] patch
  - [x] decode into runtime.Unstructured objects
  - [x] successfully use `--record` with unregistered objects 
- [x] describe
  - [x] decode into runtime.Unstructured objects
  - [x] implement generic describer
- [x] fix other generic kubectl commands to work with unstructured objects
  - [x] label
  - [x] annotate

follow-ups for pre-existing issues:
- [ ] `explain` doesn't work with unregistered resources
- [ ] remove special casing of federation group in clientset lookups, etc
- [ ] `patch`
  - [ ] doesn't honor output formats when persisting to server (`kubectl patch -f svc.json --type merge -p '{}' -o json` doesn't output json)
  - [ ] --local throws exception (`kubectl patch -f svc.json --type merge -p '{}' --local`)
- [ ] `apply`
  - [ ] fall back to generic JSON patch computation if no go struct is registered for the target GVK (e.g. https://github.com/kubernetes/kubernetes/pull/40096)
  - [ ] ensure subkey deletion works in CreateThreeWayJSONMergePatch
  - [ ] ensure type stomping works in CreateThreeWayJSONMergePatch
  - [ ] lots of tests for generic json patch computation
  - [ ] prevent generic apply patch computation among different versions
  - [ ] reconcile treatment of nulls with https://github.com/kubernetes/kubernetes/pull/35496
- [ ] `edit`
  - [ ] decode into runtime.Unstructured objects
  - [ ] fall back to generic JSON patch computation if no go struct is registered for the target GVK
2017-01-27 05:41:45 -08:00
Kubernetes Submit Queue
10e3edcaa4 Merge pull request #39223 from brendandburns/i18n
Automatic merge from submit-queue (batch tested with PRs 39223, 40260, 40082, 40389)

Add a script to extract strings for translation and a sample of it's output

@fabianofranz @deads2k @kubernetes/sig-cli-pr-reviews
2017-01-27 05:41:44 -08:00
Kubernetes Submit Queue
e6e17a5be6 Merge pull request #40572 from yujuhong/cri_cleanup
Automatic merge from submit-queue (batch tested with PRs 40126, 40565, 38777, 40564, 40572)

docker-CRI: Remove legacy code for non-grpc integration

A minor cleanup to remove the code that is no longer in use to simplify the logic.
2017-01-27 01:34:22 -08:00
Kubernetes Submit Queue
fb201dc838 Merge pull request #40564 from Random-Liu/add-container-not-found-error
Automatic merge from submit-queue (batch tested with PRs 40126, 40565, 38777, 40564, 40572)

Add IsContainerNotFound in kube_docker_client

This PR added `IsContainerNotFound` function in kube_docker_client and changed dockershim to use it.

@yujuhong @freehan
2017-01-27 01:34:21 -08:00
Kubernetes Submit Queue
3f54d093ca Merge pull request #38777 from alejandroEsc/ae/osx_cadvisor
Automatic merge from submit-queue (batch tested with PRs 40126, 40565, 38777, 40564, 40572)

Print warning about kubelet not running on darwin via local-up-cluster.sh

**What this PR does / why we need it**: As of the time of opening this PR, near the release of v.1.5, using `./hack/local-up-cluster.sh` claims to succeed and run kubelet, but logs, processes, and attempts to hit the service demonstrate that kubelet is NOT running. The issue has been found to be the hard requirements of cadvisor forcing kubelet to force exit when it is found to be unsupported as in the case of DARWIN.  

My goal here is to bring the issue to attention to others and also help other devs avoid the issue.

**Release note**:
```NONE```

kubelet.go and kubelet's server.go file has minimal logic that keeps kubelet from breaking just because osx has not cadvisor support.
2017-01-27 01:34:19 -08:00
Kubernetes Submit Queue
e80da46b94 Merge pull request #40565 from bprashanth/glbc-version
Automatic merge from submit-queue (batch tested with PRs 40126, 40565, 38777, 40564, 40572)

Bump up glbc version to 0.9.0-beta.1

I plan to bump up the version to 0.9.0 proper in time for the next 1.5.x release, and cherry-pick both this and the future pr.

Previously we were just using a single version, but the "-beta/alpha" is consistent with how we release kube and gives us a convenient revert target. It also forces us to remove the "beta" tag before code freeze, and track the kubernetes release cycle.
2017-01-27 01:34:17 -08:00
Kubernetes Submit Queue
88890f586c Merge pull request #40126 from resouer/return-value
Automatic merge from submit-queue (batch tested with PRs 40126, 40565, 38777, 40564, 40572)

Do not swallow error in asw.updateNodeStatusUpdateNeeded

Ref #39056

Bubble the error up to `SetNodeUpdateStatusNeeded` and log it out.

NOTE: This does not modify interface of `SetNodeUpdateStatusNeeded`
2017-01-27 01:34:16 -08:00
Clayton Coleman
a591242061
Use metav1.*Options in genericapiserver
Treat DeleteOptions as unversioned in metainternalversion for decoding
of bodies from older clients. Use the metav1 Options structs from
generic api server and the appropriate codec.
2017-01-27 01:25:29 -05:00
Kubernetes Submit Queue
7213816258 Merge pull request #39999 from tanshanshan/unit-test-scheduler1
Automatic merge from submit-queue (batch tested with PRs 40543, 39999)

Improve code coverage for scheduler/algorithm/priorities

**What this PR does / why we need it**:

Improve code coverage for scheduler/algorithm/priorities from #39559 

This is my first unit test  for kubernetes , thanks for your review.

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-01-26 18:07:28 -08:00
Kubernetes Submit Queue
1b8ae3a76a Merge pull request #40543 from deads2k/generic-30-feature
Automatic merge from submit-queue (batch tested with PRs 40543, 39999)

remove pkg/feature dependency from genericapiserver.

@sttts I think you just forgot this when you were snipping the rest of the link.  If I understood the previous pull correctly, this ought to ensure proper registration of the bits we need, right?
2017-01-26 18:07:27 -08:00
Yu-Ju Hong
202488995a docker-CRI: Remove legacy code for non-grpc integration 2017-01-26 17:23:20 -08:00
Kubernetes Submit Queue
be83545593 Merge pull request #40546 from ixdy/bazel-release-tars
Automatic merge from submit-queue

Default EMBED_LICENSE_TARGETS=true for make bazel-release

**What this PR does / why we need it**: the cluster startup scripts currently fail if `LICENSES` or `kubernetes-src.tar.gz` don't exist, e.g. https://github.com/kubernetes/kubernetes/blob/master/cluster/gce/gci/configure.sh#L180-L181.

**Release note**:

```release-note
NONE
```
2017-01-26 17:00:49 -08:00
Jordan Liggitt
17168aaacc
Test generic operations with thirdpartyresources 2017-01-26 19:59:27 -05:00
Jordan Liggitt
408a978f26
fix --record to work with unstructured objects 2017-01-26 19:59:27 -05:00
Jordan Liggitt
c317f92990
patch: allow --local to use structs for strategic merge, warn about unknown objects 2017-01-26 19:59:26 -05:00
Jordan Liggitt
424dac921f
Fall back to unstructured typer retrieving GVKs for printing 2017-01-26 19:59:26 -05:00
Jordan Liggitt
aaf96a1048
apply: use unstructured objects 2017-01-26 19:59:26 -05:00
Jordan Liggitt
d41e391799
describe: allow describing generic api objects 2017-01-26 19:59:26 -05:00
Jordan Liggitt
06c12f6716
describe: use unstructured objects 2017-01-26 19:59:25 -05:00
Jordan Liggitt
b6d4f371cd
patch: use unstructured objects 2017-01-26 19:59:25 -05:00
Jordan Liggitt
89266588d1
label: use unstructured objects 2017-01-26 19:59:25 -05:00
Jordan Liggitt
9b60d7fd84
annotate: use unstructured objects 2017-01-26 19:59:24 -05:00
Jordan Liggitt
dd6d454848
kubectl: remove ThirdPartyResourceData behavior for unregistered objects 2017-01-26 19:59:24 -05:00
Jordan Liggitt
a82c4481f3
Distinguish between client and unstructuredclient in fake factory 2017-01-26 19:59:16 -05:00
Jordan Liggitt
a57307a429
bazel 2017-01-26 19:59:16 -05:00
Random-Liu
e5ee619449 Add IsContainerNotFound in kube_docker_client and change dockershim to
use it.
2017-01-26 16:10:50 -08:00
Kubernetes Submit Queue
bb29efb0c3 Merge pull request #40249 from rmmh/remove-node-out-of-disk-space
Automatic merge from submit-queue (batch tested with PRs 40046, 40073, 40547, 40534, 40249)

Disable the NodeOutOfDisk test. Fixes #40246.

It destroys test clusters to the point that other tests also fail, and almost never passes.

https://k8s-testgrid.appspot.com/google-gce#gce-flaky&width=20&include-filter-by-regex=space

/cc @madhusudancs @vishh 

```release-note
NONE
```
2017-01-26 16:10:40 -08:00
Kubernetes Submit Queue
80aea340b7 Merge pull request #40534 from aveshagarwal/master-pod-anti-affinity-e2e
Automatic merge from submit-queue (batch tested with PRs 40046, 40073, 40547, 40534, 40249)

Fix e2e: validates that InterPodAntiAffinity is respected if matching 2

**What this PR does / why we need it**:
Fixed e2e: validates that InterPodAntiAffinity is respected if matching 2

```
• Failure [120.255 seconds]
[k8s.io] SchedulerPredicates [Serial]
/root/code/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/framework/framework.go:656
  validates that InterPodAntiAffinity is respected if matching 2 [It]
  /root/code/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/scheduler_predicates.go:561

  Not scheduled Pods: []v1.Pod(nil)
  Expected
      <int>: 0
  to equal
      <int>: 1

  /root/code/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/scheduler_predicates.go:933
```

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
https://github.com/kubernetes/kubernetes/issues/30142


**Special notes for your reviewer**:
xref: https://bugzilla.redhat.com/show_bug.cgi?id=1413748
While looking into the above bug, I found that the e2e was failing.

**Release note**:

```release-note
```
2017-01-26 16:10:39 -08:00
Kubernetes Submit Queue
892cd7a2a5 Merge pull request #40547 from PI-Victor/fix_typo_logging
Automatic merge from submit-queue (batch tested with PRs 40046, 40073, 40547, 40534, 40249)

fix a typo in cni log

**What this PR does / why we need it**:
fixes a typo s/unintialized/uninitialized in pkg/kubelet/network/cni/cni.go

**Release note**:

```release-note
```
2017-01-26 16:10:38 -08:00
Kubernetes Submit Queue
e3a3743410 Merge pull request #40073 from matthyx/master
Automatic merge from submit-queue (batch tested with PRs 40046, 40073, 40547, 40534, 40249)

Issue #13501 - printEvent Source to much more cleaner

Create a formatEventSource func and use it.



**What this PR does / why we need it**:
Adds a smarter way to print EventSource, removing "{ }" and the eventual extra ", " when Host is empty.
It was also reported in OpenShift issue https://github.com/openshift/origin/issues/6586

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #13501 

**Special notes for your reviewer**:
I have used this new func in all user facing printouts, but there are other places where EventSource are printed to logs, like DumpEventsInNamespace in test/e2e/framework/util.go for instance.
Don't know if I should correct there too...

**Release note**:

```release-note
Improve formatting of EventSource in kubectl get and kubectl describe
```
2017-01-26 16:10:36 -08:00
Kubernetes Submit Queue
bef60b8602 Merge pull request #40046 from juanvallejo/jvallejo/update-multiple-types-requested-check
Automatic merge from submit-queue (batch tested with PRs 40046, 40073, 40547, 40534, 40249)

update check for "all" resources

This patch updates the check for `all` resources to handle cases where a resource's name is "all". Rather than cycling through all given args until `all` is found, this patch makes sure that only a single argument `all` was specified at all.

**Release note**:
```release-note
release-note-none
```

@fabianofranz @pwittrock
2017-01-26 16:10:34 -08:00
bprashanth
b1e0bd0fa4 Bump up glbc version to beta.1 2017-01-26 14:53:50 -08:00
Kubernetes Submit Queue
ae1c9a2b25 Merge pull request #40360 from wojtek-t/speedup_secret_manager
Automatic merge from submit-queue (batch tested with PRs 40239, 40397, 40449, 40448, 40360)

Optimize secret manager to refresh secrets from apiserver cache

Ref #19188

@liggitt
2017-01-26 14:23:45 -08:00
Kubernetes Submit Queue
5f01179aff Merge pull request #40448 from Random-Liu/work-around-container-create-conflict
Automatic merge from submit-queue (batch tested with PRs 40239, 40397, 40449, 40448, 40360)

CRI: Work around container create conflict.

Fixes https://github.com/kubernetes/kubernetes/issues/40443.

This PR added a random suffix in the container name when we:
* Failed to create the container because of "Conflict".
* And failed to remove the container because of "No such container".

@yujuhong @feiskyer 
/cc @kubernetes/sig-node-bugs
2017-01-26 14:23:43 -08:00
Kubernetes Submit Queue
aace5a7b87 Merge pull request #40449 from deads2k/client-15-types
Automatic merge from submit-queue (batch tested with PRs 40239, 40397, 40449, 40448, 40360)

move the discovery and dynamic clients

Moved the dynamic client, discovery client, testing/core, and testing/cache to `client-go`.  Dependencies on api groups we don't have generated clients for have dropped out, so federation, kubeadm, and imagepolicy.

@caesarxuchao @sttts 

approved based on https://github.com/kubernetes/kubernetes/issues/40363
2017-01-26 14:23:42 -08:00
Kubernetes Submit Queue
cfafc575dd Merge pull request #40397 from yujuhong/protoc_settings
Automatic merge from submit-queue (batch tested with PRs 40239, 40397, 40449, 40448, 40360)

CRI: use more gogoprotobuf plugins

Generate marshaler/unmarshaler code should help improve the performance.

This addresses #40098
2017-01-26 14:23:39 -08:00
Kubernetes Submit Queue
7857b9acdf Merge pull request #40239 from dashpole/disk_pod_lifecycle
Automatic merge from submit-queue

Delay deletion of pod from the API server until volumes are deleted

Depends on #37228, and will not pass tests until that PR is merged, and this is rebased.

Keeps all kubelet behavior the same, except the kubelet will not make the "Delete" call (kubeClient.Core().Pods(pod.Namespace).Delete(pod.Name, deleteOptions)) until the volumes associated with that pod are removed.  I will perform some performance testing so that we better understand the latency impact of this change.

Is kubelet_pods.go the correct file to include the "when can I delete this pod" logic?

cc: @vishh @sjenning @derekwaynecarr
2017-01-26 13:46:02 -08:00
Alejandro Escobar
f79094e8a2 added warning message error about not running kubelet if not darwin/linux to my check 2017-01-26 13:11:27 -08:00
Alejandro Escobar
9ccade5939 added warning message to display when host_os is found to be darwin since kubelet is not supported in that case. 2017-01-26 13:03:49 -08:00
Kubernetes Submit Queue
9ea9480650 Merge pull request #40312 from p0lyn0mial/add_shortName_to_the_api
Automatic merge from submit-queue

Added shortName to meta.v1.APIResource.

The shortNames would be used to allow kubectl to have short names representations of resources from aggregated API servers.


```release-note
Adds `shortNames` to the `APIResource` from discovery which is a list of recommended shortNames for clients like `kubectl`.
```



**What this PR does / why we need it**:
The shortNames would be used to allow kubectl to have short names representations of resources from aggregated API servers.


**Special notes for your reviewer**:
I have followed the steps described here [Changing the internal structures](https://github.com/kubernetes/community/blob/master/contributors/devel/api_changes.md)

I have run the following scripts:

hack/update-codegen.sh
hack/update-generated-protobuf.sh
hack/update-codecgen.sh
hack/update-openapi-spec.sh
hack/update-swagger-spec.sh
hack/update-federation-openapi-spec.sh
hack/update-api-reference-docs.sh

See also:

#[38755](https://github.com/kubernetes/kubernetes/pull/38755)
#[38835](https://github.com/kubernetes/kubernetes/pull/38835#event-914403188) 


**Release note**:

Extended meta.v1.APIResource by a list of short names. The short names would be used to allow kubectl to have short names representations of resources from aggregated API servers.
2017-01-26 12:45:55 -08:00
Ryan Hitchman
774f6ebd29 Disable the NodeOutOfDisk test.
It destroys test clusters to the point that other tests also fail, and
almost never passes.
2017-01-26 12:38:00 -08:00
PI-Victor
388144f769
fix a typo in cni log 2017-01-26 21:27:38 +01:00
Jeff Grafton
f9d63ef9b2 Default EMBED_LICENSE_TARGETS=true for make bazel-release 2017-01-26 12:20:06 -08:00
Kubernetes Submit Queue
15466fcca9 Merge pull request #40535 from kubernetes/grodrigues3-patch-1
Automatic merge from submit-queue

Update OWNERS for pkg/controller/deployment

Add approvers to the leaf owners file.

**Release note**:
```NONE
```
2017-01-26 11:59:01 -08:00
Wojciech Tyczynski
220cfdff91 Optimize secret manager to refresh secrets from apiserver cache 2017-01-26 20:54:45 +01:00
deads2k
b511741df7 remove pkg/feature dependency from genericapiserver. 2017-01-26 14:53:05 -05:00
Kubernetes Submit Queue
5b75980c32 Merge pull request #40261 from kargakis/fix-deployment-completeness
Automatic merge from submit-queue

controller: old pods should block deployment completeness

Fixes https://github.com/kubernetes/kubernetes/issues/40207
2017-01-26 11:08:03 -08:00