Commit Graph

36843 Commits

Author SHA1 Message Date
Wojciech Tyczynski
d70a9615ec Minor clearnup in etcd3 code 2016-10-06 15:38:34 +02:00
Joe Beda
ce00838e47 Fix broken build/push-federation-images.sh
This was broken by #30787. A stray bash `source` caused an undefined variable reference.

Apparently the federation images have a parallel nad different "release" path
that isn't tested by the pre-checkin tests.
2016-10-06 06:23:31 -07:00
Rodrigo Campos
0ff2f089ff Remove duplicated code in secret e2e tests
This patch just removes duplicated code in secret e2e tests.
2016-10-06 10:04:51 -03:00
Kubernetes Submit Queue
4dc418c5ee Merge pull request #34217 from wojtek-t/cacher_logging_2
Automatic merge from submit-queue

Extend logging in cacher to understand its bottleneck
2016-10-06 03:29:19 -07:00
Kubernetes Submit Queue
392f6f4757 Merge pull request #33983 from janetkuo/check-petset-status
Automatic merge from submit-queue

Add status check in PetSet e2e tests

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

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

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

**Special notes for your reviewer**: cc @erictune @foxish @kubernetes/sig-apps

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
NONE
```
2016-10-06 02:51:26 -07:00
Kubernetes Submit Queue
3c3f74922d Merge pull request #34082 from wojtek-t/integration_test_using_etcd3
Automatic merge from submit-queue

Use etcd3.0.10 in integration tests

Also, start testing etcd2->etcd3 migration as part of test-update-storage-object test.

[We are already using etcd 3.0.10 in unit tests. And we are still testing the current binary as part of all e2e tests, which I think is enough. I think we can start using 3.0.10 in integrations tests now.

Ref #20504

@lavalamp @timothysc
2016-10-06 02:13:33 -07:00
Wojciech Tyczynski
90bc19959d Extend logging in cacher to understand its bottleneck 2016-10-06 10:57:46 +02:00
Michail Kargakis
52822d7d6b Add a test case and consolidate deployment constructors 2016-10-06 10:37:35 +02:00
Michail Kargakis
ed8b77087a controller: scale proportionally before rolling out new templates 2016-10-06 10:36:39 +02:00
Wojciech Tyczynski
0e61d817c5 Start testing etcd2->etcd3 migration in test-update-storage-objects 2016-10-06 09:32:49 +02:00
Wojciech Tyczynski
19e50d56dc Run integration tests with 3.0.10 etcd underneath 2016-10-06 09:32:49 +02:00
Kubernetes Submit Queue
42e5f95a6b Merge pull request #34024 from deads2k/controller-06-deployment-controller
Automatic merge from submit-queue

update deployment and replicaset listers

Updates the deployment lister to avoid copies and updates the deployment controller to use shared informers.

Pushing WIP to see which tests are broken.
2016-10-06 00:02:34 -07:00
Kubernetes Submit Queue
a98850bf30 Merge pull request #34055 from freehan/revert-add-network-node-e2e
Automatic merge from submit-queue

Revert "Revert "move pod networking tests common""

Reverts #34011

And fix the problem causing `Granular Checks: Services [Slow] should update nodePort` tests to fail
2016-10-05 23:25:09 -07:00
Kubernetes Submit Queue
45e5719c2c Merge pull request #33792 from caesarxuchao/decouple-workqueue-prometheus
Automatic merge from submit-queue

decouple workqueue metrics from prometheus

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**:
We want to include the workqueue in client-go, but do not want to having to import Prometheus. This PR decouples the workqueue from prometheus.

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

Partially address https://github.com/kubernetes/kubernetes/issues/33497
User requested for `workqueue` in client-go: https://github.com/kubernetes/client-go/issues/4#issuecomment-249444848

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
The implicit registration of Prometheus metrics for workqueue has been removed, and a plug-able interface was added. If you were using workqueue in your own binaries and want these metrics, add the following to your imports in the main package: "k8s.io/pkg/util/workqueue/prometheus".
```
2016-10-05 22:10:11 -07:00
Kubernetes Submit Queue
63139f937c Merge pull request #30787 from jbeda/rsync
Automatic merge from submit-queue

Speed up dockerized builds

This PR speeds up dockerized builds.  First, we make sure that we are as incremental as possible.  The bigger change is that now we use rsync to move sources into the container and get data back out.

To do yet:
* [x] Add a random password to rsync.  This is 128bit MD4, but it is better than nothing.
* [x] Lock down rsync to only come from the host.
* [x] Deal with remote docker engines -- this should be necessary for docker-machine on the mac.
* [x] Allow users to specify the port for the rsync daemon.  Perhaps randomize this or let docker pick an ephemeral port and detect the port?
* [x] Copy back generated files so that users can check them in.  This is done for `zz_generated.*` files generated by `make generated_files` 
  * [x] This should include generated proto files so that we can remove the hack-o-rama that is `hack/hack/update-*-dockerized.sh` 
* [x] Start "versioning" the build container and the data container so that the CI system doesn't have to be manually kicked.
* [x] Get some benchmarks to qualify how much faster.

This replaces #28518 and is related to #30600.

cc @thockin @spxtr @david-mcmahon @MHBauer 

Benchmarks by running `make clean ; sync ; time bash -xc 'time build/make-build-image.sh ; time sync ; time build/run.sh make ; time sync; time build/run.sh make'` on a GCE n1-standard-8 with PD-SSD.

| setup | build image | sync | first build | sync | second build | total |
|-------|-------------|----- |----------|------|--------------|------|
| baseline | 0m11.420s | 0m0.812s | 7m2.353s | 0m42.380s | 7m8.381s | 15m5.348s |
| this pr | 0m10.977s | 0m15.168s | 7m31.096s | 1m55.692s | 0m16.514s | 10m9.449s |
2016-10-05 19:51:09 -07:00
Kubernetes Submit Queue
7766b408b8 Merge pull request #31467 from vmware/fix-vsphere-cloud-provider.kerneltime
Automatic merge from submit-queue

Add support for vpshere cloud provider in kubeup

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**:
vSphere cloud provider added in 1.3 was not configured when deploying via kubeup

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

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
Add support for vSphere Cloud Provider when deploying via kubeup on vSphere.
```

When deploying on vSphere using kube up add configuration
for vSphere cloud provider.
2016-10-05 19:12:17 -07:00
Kubernetes Submit Queue
0554f58489 Merge pull request #34141 from Random-Liu/add-cri-node-serial-and-benchmark
Automatic merge from submit-queue

CRI: Add serial and benchmark test suite.

For https://github.com/kubernetes/kubernetes/issues/31459.

The serial test result will be shown on test-grid.
The benchmark test result will be shown [node-perf-dash](http://node-perf-dash.k8s.io/#/builds)

This PR also changes the cri validation test to use the same gci image with node e2e instead of the canary image. The docker version is still 1.11.2.

@yujuhong @feiskyer @yifan-gu 
/cc @kubernetes/sig-node
2016-10-05 18:35:24 -07:00
Quinton Hoole
68c0c5ddea Add missing argument to log message in federated ingress controller. 2016-10-05 18:20:12 -07:00
Ritesh H Shukla
ea22d0cc5f Update exceptions list for underscores introduced in kubeup for vSphere. 2016-10-05 16:57:33 -07:00
Kubernetes Submit Queue
4ecb032bc9 Merge pull request #33129 from dcbw/kubenet-warn-podcidr-updates
Automatic merge from submit-queue

kubenet: make it more apparent that kubenet ignores PodCIDR updates

Don't suppress a warning that kubenet will ignore PodCIDR updates.

See https://github.com/kubernetes/kubernetes/issues/32900
2016-10-05 16:15:18 -07:00
mbohlool
2a180d89c8 Generated openapi spec 2016-10-05 16:03:18 -07:00
mbohlool
4ed8328e8d Fix a typo in util.sh that resulted in wrong openapi spec generation 2016-10-05 15:59:38 -07:00
Kubernetes Submit Queue
9aac6cfdb6 Merge pull request #34068 from Random-Liu/add-cri-presubmit-test
Automatic merge from submit-queue

CRI: Add presubmit CRI validation test.

For #31459.

This PR adds a new suite for CRI presubmit validation which runs non-flaky, non-serial, non-slow test per-pr.

Except this PR, I'll also change the test-infra side. Ideally, after this is done, we should be be able to trigger CRI validation test per-pr with something like `@k8s-bot cri node e2e test this` and `@k8s-bot cri e2e test this`.

@yujuhong @feiskyer @yifan-gu @freehan 
/cc @kubernetes/sig-node
2016-10-05 15:38:25 -07:00
Kubernetes Submit Queue
05192d9d57 Merge pull request #33319 from juanvallejo/jvallejo/add-option-to-set-nodeport
Automatic merge from submit-queue

Add option to set a service nodeport

**Release note**:
```release-note
Add kubectl --node-port option for specifying the service nodeport
```

This patch adds the option to set a nodeport when creating a NodePort
service. In case of a port allocation error due to a specified port
being out of the valid range, the error now includes the valid
range. If a `--node-port` value is not specified, it defaults to zero, in
which case the allocator will default to its current behavior of
assigning an available port.

This patch also adds a new helper function in `cmd/util/helpers.go` to
retrieve `Int32` cobra flags.

**Example**
```
# create a nodeport service with an invalid port
$ kubectl create service nodeport mynodeport --tcp=8080:7777 --node-port=1
The Service "mynodeport" is invalid: spec.ports[0].nodePort: Invalid
value: 1: provided port is not in the valid range. Valid ports range
from 30000-32767

# create a nodeport service with a valid port
$ kubectl create service nodeport mynodeport --tcp=8080:7777 --node-port=30000
service "mynodeport" created

# create a nodeport service with a port already in use
$ kubectl create service nodeport mynodeport --tcp=8080:7777 --node-port=30000
The Service "mynodeport" is invalid: spec.ports[0].nodePort: Invalid value: 3000: provided port is already allocated

$ kubectl describe service mynodeport
Name:                   mynodeport
Namespace:              default
Labels:                 app=mynodeport
Selector:               app=mynodeport
Type:                   NodePort
IP:                     172.30.81.254
Port:                   8080-7777       8080/TCP
NodePort:               8080-7777       30000/TCP
Endpoints:              <none>
Session Affinity:       None
No events.
```

@fabianofranz
2016-10-05 15:00:32 -07:00
Timothy St. Clair
f2b8b08651 Turn down hootloop logs in priorities. Hit once cluster is near capacity 2016-10-05 16:58:23 -05:00
Kubernetes Submit Queue
bd3664cbef Merge pull request #34000 from wojtek-t/set_cache_size
Automatic merge from submit-queue

Set deserialization cache size based on target memory usage

**Special notes for your reviewer**:

This is the PR we talked about yesterday.

**Release note**:

```release-note
To reduce memory usage to reasonable levels in smaller clusters, kube-apiserver now sets the deserialization cache size based on the target memory usage.
```
2016-10-05 14:23:39 -07:00
Random-Liu
6a4a6e5b6c Add presubmit CRI validation test. 2016-10-05 14:05:05 -07:00
Kubernetes Submit Queue
234c562d4a Merge pull request #33310 from deads2k/controller-04-auto-create-SA
Automatic merge from submit-queue

use service accounts as clients for controllers

Makes it possible for the controller-manager to use service accounts to run individual controllers.  To start, this only enables this feature if this particular controller manager has the power to create service account tokens.  Otherwise, the full-powered client is used instead.  This is a necessary step on the way to subdividing the authority of controllers.

@kubernetes/sig-auth 
@erictune I know you care about this
@ncdc fyi
2016-10-05 13:46:44 -07:00
Jordan Liggitt
3b5c3c286c
Fix wait.JitterUntil 2016-10-05 16:29:06 -04:00
Kubernetes Submit Queue
6f78c0d912 Merge pull request #33951 from pmorie/selinux-overhaul
Automatic merge from submit-queue

Proposal: SELinux enhancements

TLDR: Try to make SELinux support better by not requiring Kubelet directory to be labeled with an SELinux type usable from the container.

cc @kubernetes/sig-node @yifan-gu
2016-10-05 13:09:18 -07:00
Kubernetes Submit Queue
a516ec3085 Merge pull request #34129 from mwielgus/daemonset-client
Automatic merge from submit-queue

Daemonset in federated clientset

Only hack/update-codegen.sh was edited manually.

cc: @nikhiljindal @quinton-hoole @kubernetes/sig-cluster-federation
2016-10-05 13:09:10 -07:00
Kubernetes Submit Queue
87393e1da9 Merge pull request #34106 from kargakis/rollout-status-watch-flag
Automatic merge from submit-queue

kubectl: add watch flag in rollout status

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

@kubernetes/kubectl
2016-10-05 13:09:01 -07:00
Kubernetes Submit Queue
debac32d51 Merge pull request #33972 from bowei/flake-issue-27023
Automatic merge from submit-queue

Add a retry loop to KubeletManagerEtcHosts flake

Add a retry loop to KubeletManagerEtcHosts flake
    
    Note: this still makes the test fail if a retry occurs, but
    will give us more information regarding whether or not the
    test flake could be occuring due to delay in mounting of
    /etc/hosts.
2016-10-05 12:27:28 -07:00
deads2k
c30b2efc46 update replicaset lister 2016-10-05 15:20:27 -04:00
Random-Liu
b7b95ccb19 Add serial and benchmark test suite. 2016-10-05 12:03:32 -07:00
Kubernetes Submit Queue
d4088fc47b Merge pull request #34020 from juanvallejo/jvallejo/allow-empty-annotation-values
Automatic merge from submit-queue

Allow empty annotation values

Related downstream issue: https://github.com/openshift/origin/issues/11175

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

Annotations with empty values can be used, for example, in diagnostics
logging. This patch removes the client-side check for empty values in
an annotation key-value pair.

**Before**
```
$ kubectl annotate pod zookeeper-1 node-selector="" --overwrite
error: invalid annotation format: node-selector=
```

**After**
```
$ kubectl annotate pod zookeeper-1 node-selector="" --overwrite
pod "zookeper-1" annotated
```

```
$ kubectl get po/zookeeper-1 --template='{{.metadata.annotations}}'
map[... node-selector: test-label:test]
```

@fabianofranz @liggitt
2016-10-05 11:48:02 -07:00
Kubernetes Submit Queue
da44775a2c Merge pull request #34107 from MrHohn/e2e_sourceip_fix
Automatic merge from submit-queue

Fix #31085, include output checking in retry loop

Fix #31085.

`wget -qO-` might omit the error and `RunHostCmd()` won't be able to catch it sometimes. Verify stdout is not empty within the retry loop to fix. Test passed 1500+ times in a row.

@freehan
2016-10-05 11:02:35 -07:00
Minhan Xia
1a9bafd679 fix bug in DialFromNode where it fail the test when encountered a command execution failure 2016-10-05 11:00:57 -07:00
Marcin
64d5335f98 Daemonset in federated clientset 2016-10-05 19:58:49 +02:00
Minhan Xia
df92825c33 Revert "Revert "move pod networking tests common"" 2016-10-05 10:53:22 -07:00
deads2k
358a57d74a update deployment lister 2016-10-05 13:27:35 -04:00
Bowei Du
d61d3e48ee Add a retry loop to KubeletManagerEtcHosts flake
Note: this still makes the test fail if a retry occurs, but
will give us more information regarding whether or not the
test flake could be occuring due to delay in mounting of
/etc/hosts.
2016-10-05 10:24:21 -07:00
juanvallejo
a872657371
Allow empty annotation values
Annotations with empty values can be used, for example, in diagnostics
logging. This patch removes the client-side check for empty values in
an annotation key-value pair.

**Before**
```
$ kubectl annotate pod zookeeper-1 node-selector="" --overwrite
error: invalid annotation format: node-selector=
```

**After**
```
$ kubectl annotate pod zookeeper-1 node-selector="" --overwrite
pod "zookeper-1" annotated
```

```
$ kubectl get po/zookeeper-1 --template='{{.metadata.annotations}}'
map[... node-selector: test-label:test]
```
2016-10-05 13:17:08 -04:00
deads2k
8ea2acc6a3 use service accounts as clients for controllers 2016-10-05 13:15:16 -04:00
deads2k
c2ed560991 fix watch.until and added listwatch 2016-10-05 13:15:16 -04:00
Kubernetes Submit Queue
617fa91264 Merge pull request #34098 from deads2k/sttts-handlerchain
Automatic merge from submit-queue

Customizable genericapiserver handler chain

Rebase of https://github.com/kubernetes/kubernetes/pull/33662.  This is @sttts, but I rebased it for him since he's out this week.
2016-10-05 09:45:57 -07:00
Dan Williams
e2c96db72b kubenet: make it more apparent that kubenet ignores PodCIDR updates
https://github.com/kubernetes/kubernetes/issues/32900
2016-10-05 11:24:02 -05:00
MrHohn
c61911eedd Fix #31085, include output checking in retry loop 2016-10-05 09:13:19 -07:00
Kubernetes Submit Queue
5caf7199ee Merge pull request #33934 from soltysh/audit_groups
Automatic merge from submit-queue

Add asgroups to audit log

@deads2k || @sttts while reworking origing to use upstream I've noticed we're missing this, ptal
2016-10-05 09:08:23 -07:00
Kubernetes Submit Queue
a6b9e53da5 Merge pull request #34103 from gmarek/long_integration_tests
Automatic merge from submit-queue

Allow setting short value in integration tests

@deads2k
2016-10-05 08:30:01 -07:00