Commit Graph

3399 Commits (6de83d58537f576103d1f341e8da22fa9080b78a)

Author SHA1 Message Date
Jeff Lowdermilk 427e34a325 Use latest branch build for GKE tests.
Pull the latest build of the release the server is running, rather
than matching exact version. This allows GKE to pick up test fixes
from branch head, instead of waiting for a patch.
2016-06-09 12:34:24 -07:00
k8s-merge-robot c80f650b70 Merge pull request #26188 from brendandburns/test_main
Automatic merge from submit-queue

Add a custom main instead of the standard test main, to reduce stack …

Adds a custom test main handler (see: `TestMain` in https://golang.org/pkg/testing/ for details)

Partial fix for https://github.com/kubernetes/kubernetes/issues/25965

This does the standard timeout, but strips non-kubernetes stacks out of the stack trace (e.g. it filters things like:

```
goroutine 466 [IO wait, 7 minutes]:
net.runtime_pollWait(0x7fd74c4672c0, 0x72, 0xc821614000)
	/usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8215c21b0, 0x72, 0x0, 0x0)
	/usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8215c21b0, 0x0, 0x0)
	/usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc8215c2150, 0xc821614000, 0x1000, 0x1000, 0x0, 0x7fd74c491050, 0xc820014058)
	/usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc820a5a090, 0xc821614000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:172 +0xe4
net/http.noteEOFReader.Read(0x7fd74c465258, 0xc820a5a090, 0xc8215f0068, 0xc821614000, 0x1000, 0x1000, 0x405773, 0x0, 0x0)
	/usr/local/go/src/net/http/transport.go:1687 +0x67
net/http.(*noteEOFReader).Read(0xc8215ae1a0, 0xc821614000, 0x1000, 0x1000, 0xc82159ad1d, 0x0, 0x0)
	<autogenerated>:284 +0xd0
bufio.(*Reader).fill(0xc8202a2b40)
	/usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).Peek(0xc8202a2b40, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0)
	/usr/local/go/src/bufio/bufio.go:132 +0xcc
net/http.(*persistConn).readLoop(0xc8215f0000)
	/usr/local/go/src/net/http/transport.go:1073 +0x177
created by net/http.(*Transport).dialConn
	/usr/local/go/src/net/http/transport.go:857 +0x10a6
```

We may want to get even more aggressive in the future.

@kubernetes/sig-testing
2016-06-09 04:11:01 -07:00
k8s-merge-robot 72beb65ee5 Merge pull request #27027 from andyzheng0831/gci-network
Automatic merge from submit-queue

GCI: add support for network plugin

I had run e2e against a cluster with both master and nodes on GCI a couple of times. The PR auto tests will cover the hybrid cluster with just master on GCI.

cc/ @roberthbailey @fabioy @kubernetes/goog-image
2016-06-08 23:01:19 -07:00
Daniel Smith 8faa88626d Revamp doc generation
Auto generated docs are **NO LONGER CHECKED IN**, only placeholders.

To generate them, e.g. before exporting docs, run hack/generate-docs.sh.

hack/verify-generated-docs.sh ensures that generated docs are merely the
placeholder text.

hack/update-generated-docs.sh puts the placeholder text in the proper
places.

The old munge behavior is moved into hack/{update|verify}-munge-docs.sh.
2016-06-08 17:22:12 -07:00
k8s-merge-robot 6986a3b2e2 Merge pull request #27091 from mml/union-merge
Automatic merge from submit-queue

Mark known-flags to merge via union.
2016-06-08 17:11:02 -07:00
Matt Liggett 52f6b27365 Mark known-flags to merge via union.
This avoids pointless merge conflicts in a simple text file.
Fixes #27088.
2016-06-08 15:59:35 -07:00
Matt Liggett d09af4a1d6 Stop 'drain' deleting pods with local storage.
Unless forced with --delete-local-data.  Also a refactoring of the
kubectl drain logic that selects/rejects pods and produces error/warning
messages.
2016-06-08 14:59:03 -07:00
k8s-merge-robot 525a56eff8 Merge pull request #26832 from pwittrock/node-e2e-makefile
Automatic merge from submit-queue

Node e2e Makefile support for running remote tests against kubernetes…

Fixes #26665

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()

…-node-e2e-images.
2016-06-08 14:25:28 -07:00
Andy Zheng 66d6b43b67 GCI: add support for kubenet 2016-06-08 13:20:44 -07:00
k8s-merge-robot 49db4f89b2 Merge pull request #26920 from mml/flake.unsched
Automatic merge from submit-queue

Retain debug logs for etcd when there is a place to keep them.
2016-06-08 08:06:22 -07:00
Phillip Wittrock e94e1c6e3d Node e2e Makefile support for running remote tests against kubernetes-node-e2e-images.
Also includes other improvements:
- Makefile rule to run tests against remote instance using existing host or image
- Makefile will reuse an instance created from an image if it was not torn down
- Runner starts gce instances in parallel with building source
- Runner uses instance ip instead of hostname so that it doesn't need to resolve
- Runner supports cleaning up files and processes on an instance without stopping / deleting it
- Runner runs tests using `ginkgo` binary to support running tests in parallel
2016-06-08 07:31:54 -07:00
Angus Salkeld 165f4de167 Fix type-o in definitions.html 2016-06-08 14:22:16 +10:00
k8s-merge-robot a283a0a759 Merge pull request #26828 from vishh/oom-kill-enable
Automatic merge from submit-queue

Enable support for memory eviction configuration via salt

Added evictions based on memory by default whenever the available memory is < 100Mi.

Updated GCE and GCI.
2016-06-07 21:12:50 -07:00
Aaron Levy e8d1dae1a9 Use a skeleton provider for unimplemented functionality 2016-06-07 16:08:09 -07:00
Dawn Chen 0d3be6a316 Merge pull request #26735 from timstclair/local-e2e
Fixes for running node e2es
2016-06-07 14:51:18 -07:00
Matt Liggett 5dcb8210ac Retain debug logs for etcd when there is a place to keep them.
For help debugging #25845
2016-06-07 12:25:10 -07:00
Fabio Yeon da112e23af Handle multiple MIGs (single-zone) properly in GKE scripts. 2016-06-07 08:59:51 -07:00
k8s-merge-robot 72b1be9c76 Merge pull request #26789 from ihmccreery/always-skew-client
Automatic merge from submit-queue

Always skew the client when running version-skew tests

As mentioned in the comments:

- for upgrade jobs, we want kubectl to be at the same version as master.
- for client skew tests, we want to use the skewed kubectl (that's what we're testing).

So, remove gate on `JENKINS_USE_SKEW_KUBECTL`, and always use the skewed `kubectl`.

This should go in before https://github.com/kubernetes/test-infra/pull/109.
2016-06-06 23:08:44 -07:00
Vishnu kannan 7e731dac60 ignore _output directory in verify flags script
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-06-06 17:47:38 -07:00
Vishnu kannan ca657cecff make flags script happy
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-06-06 17:47:38 -07:00
Brendan Burns 94b24351da Add a custom main instead of the standard test main, to reduce stack spew. 2016-06-06 13:40:09 -07:00
k8s-merge-robot b6b079b1e9 Merge pull request #26812 from spxtr/redirect
Automatic merge from submit-queue

Upload build-log.txt if it exists.

Companion to https://github.com/kubernetes/test-infra/pull/112.
2016-06-06 10:22:53 -07:00
k8s-merge-robot 57125d81e1 Merge pull request #26621 from liyimeng/kolla-k8s
Automatic merge from submit-queue

Fix the problem in building hyperkube for 3rd party registry

Minor bugfix.  fixes #26620



[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-04 04:23:31 -07:00
Prashanth Balasubramanian 2439930592 Fix srv record lookup 2016-06-03 20:41:08 -07:00
Joe Finney 771cdccbd3 Upload build-log.txt if it exists. 2016-06-03 14:26:27 -07:00
Daniel Wang a3d712c359 Prep for continuous Docker validation test
We want to continuously validate Docker releases (#25215), on GCI. This change
adds a new test config variable, `KUBE_GCI_DOCKER_VERSION`, through which we can
specify which version of Docker we want to run on the master and nodes. This
change also patches the Jenkins e2e-runner with the ability to fetch the latest
Docker (pre)release, and sets the aforementioned variable accordingly.
2016-06-03 13:42:13 -07:00
k8s-merge-robot 69e45dc30d Merge pull request #26671 from vishh/node-e2e-images
Automatic merge from submit-queue

Support images and instances to exist in different GCP projects for node

Forked off from #26314
2016-06-03 13:38:02 -07:00
k8s-merge-robot 421c12e69e Merge pull request #26458 from david-mcmahon/godep-version
Automatic merge from submit-queue

Check for a valid godep version.
2016-06-03 11:04:38 -07:00
Isaac Hollander McCreery 28738ff787 Always skew the client when running version-skew tests 2016-06-03 10:31:23 -07:00
k8s-merge-robot 4adc00eceb Merge pull request #26454 from thockin/licenses_again
Automatic merge from submit-queue

Don't allow deps with no discernible license

This updates the few deps we had with no LICENSE file to current versions that do have that file.  It also disallows new deps without obvious licenses.
2016-06-03 01:18:14 -07:00
k8s-merge-robot 75ef1ca270 Merge pull request #26351 from saad-ali/attachDetachControllerKubeletChanges
Automatic merge from submit-queue

Attach/Detach Controller Kubelet Changes

This PR contains changes to enable attach/detach controller proposed in #20262.

Specifically it:
* Introduces a new `enable-controller-attach-detach` kubelet flag to enable control by attach/detach controller. Default enabled.
* Removes all references `SafeToDetach` annotation from controller.
* Adds the new `VolumesInUse` field to the Node Status API object.
* Modifies the controller to use `VolumesInUse` instead of `SafeToDetach` annotation to gate detachment.
* Modifies kubelet to set `VolumesInUse` before Mount and after Unmount.
  * There is a bug in the `node-problem-detector` binary that causes `VolumesInUse` to get reset to nil every 30 seconds. Issue https://github.com/kubernetes/node-problem-detector/issues/9#issuecomment-221770924 opened to fix that.
  * There is a bug here in the mount/unmount code that prevents resetting `VolumeInUse in some cases, this will be fixed by mount/unmount refactor.
* Have controller process detaches before attaches so that volumes referenced by pods that are rescheduled to a different node are detached first.
* Fix misc bugs in controller.
* Modify GCE attacher to: remove retries, remove mutex, and not fail if volume is already attached or already detached.

Fixes #14642, #19953

```release-note
Kubernetes v1.3 introduces a new Attach/Detach Controller. This controller manages attaching and detaching volumes on-behalf of nodes that have the "volumes.kubernetes.io/controller-managed-attach-detach" annotation.

A kubelet flag, "enable-controller-attach-detach" (default true), controls whether a node sets the "controller-managed-attach-detach" or not.
```
2016-06-02 23:30:32 -07:00
k8s-merge-robot c4874be34e Merge pull request #26553 from wojtek-t/test_path_prefix
Automatic merge from submit-queue

Test non-default etcdPrefixes.

Fix #26489
2016-06-02 22:43:16 -07:00
Mike Metral 4409eed57f fix recursive & non-recursive kubectl get of generic output format 2016-06-02 21:46:15 -07:00
k8s-merge-robot eb57124562 Merge pull request #26522 from xiangpengzhao/fix_noproxy
Automatic merge from submit-queue

Export no_proxy if behind a proxy

Fix #26261
2016-06-02 18:43:43 -07:00
k8s-merge-robot 0a2a7a9d6a Merge pull request #26528 from johscheuer/hack-update-api-docs
Automatic merge from submit-queue

Fixes #26526 - hack/update-api-reference-docs.sh

I opened a Pull request to fix this issue https://github.com/kubernetes/kubernetes/issues/26526

The problem is that the update script ignores white spaces but the verify script doesn't which leads to a strange behaviour -> you use the update script but the verify script tells you that the api docs are not up to date.
2016-06-02 17:04:10 -07:00
Tim Hockin 3c6ce53b7f Fix call-sites after dep updates 2016-06-02 16:57:28 -07:00
Saad Ali 9dbe943491 Attach/Detach Controller Kubelet Changes
This PR contains Kubelet changes to enable attach/detach controller control.
* It introduces a new "enable-controller-attach-detach" kubelet flag to
  enable control by controller. Default enabled.
* It removes all references "SafeToDetach" annoation from controller.
* It adds the new VolumesInUse field to the Node Status API object.
* It modifies the controller to use VolumesInUse instead of SafeToDetach
  annotation to gate detachment.
* There is a bug in node-problem-detector that causes VolumesInUse to
  get reset every 30 seconds. Issue https://github.com/kubernetes/node-problem-detector/issues/9
  opened to fix that.
2016-06-02 16:47:11 -07:00
David McMahon d038c53c0b Check for a valid godep version. 2016-06-02 16:35:14 -07:00
Tim Hockin aae0c90d64 Abort if we can't find a license 2016-06-02 15:57:30 -07:00
Tim Hockin 392c5dc618 Update license for go4.org
Add it as a special case package root and import the license file.  This was
the only UNKNOWN license, prior to the change to not look at upstream repo
state.
2016-06-02 15:57:30 -07:00
Tim St. Clair fef89f1b39 Refresh sudo credentials before running node e2e 2016-06-02 13:16:26 -07:00
Vishnu kannan 60ed27783e Support images and instances to exist in different GCP projects for node
e2e.
Add current user to docker group on instances for node e2e.

Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-06-01 18:01:02 -07:00
Daniel Wang a8701baf17 Move the defaults setting of GCI to util.sh
This change recovers some of the side effects of
https://github.com/kubernetes/kubernetes/pull/26197, i.e., keeps the defaults of
`NODE_IMAGE` and `NODE_IMAGE_PROJECT` to `MASTER_IMAGE` and
`MASTER_IMAGE_PROJECT`, for backward compatibility. Although it keeps
`OS_DISTRIBUTION` defaulting to `gci`, the default settings of these vars are
moved to `cluster/gce/util.sh` and conditioned on `OS_DISTRIBUTION==gci`.
2016-06-01 15:37:02 -07:00
k8s-merge-robot 9336eb516b Merge pull request #26575 from mwielgus/gke-token-src
Automatic merge from submit-queue

Pass /etc/gce.conf to cluster autoscaler if needed

cc: @vulpecula @piosz @jszczepkowski @fgrzadkowski
2016-06-01 09:42:45 -07:00
k8s-merge-robot bc6c66d4d4 Merge pull request #25726 from jszczepkowski/hpa-testfix
Automatic merge from submit-queue

Rework of resource consumer.
2016-06-01 08:50:23 -07:00
Jerzy Szczepkowski 967a7c95d2 Rework of resource consumer.
Major rework of resource consumer: added controller running as a pod that spreads requests around consumers. This should fix #21664 and #23536.
2016-06-01 15:50:03 +02:00
k8s-merge-robot 5a5a6cc4d3 Merge pull request #26523 from luxas/fix_native_build_go
Automatic merge from submit-queue

Don't set the env var CC when not cross-compiling

I noticed that this script was trying to use `arm-linux-gnueabi-gcc` also when running natively on arm.
When running natively, `CC` should always be `gcc` (which also is the default)

Also added `federation-controller-manager` to the static list, I think someone forgot to do that.

@ixdy @david-mcmahon @spiffxp @spxtr
2016-06-01 05:58:03 -07:00
Marcin Wielgus 4c467e1017 Update underscore flag exceptions 2016-06-01 13:54:28 +02:00
Jerzy Szczepkowski 93e5b12a06 Multiple MIGs in e2e cluster autoscaling tests.
Implemented support for multiple MIGs in e2e cluster autoscaling tests.
2016-06-01 11:20:41 +02:00
Liyi Meng 6c195a4923 Fix the problem in building hyperkube for 3rd party registry 2016-06-01 04:38:48 -04:00
Girish Kalele 60d2293f4c Address review comments 2016-05-31 10:14:33 -07:00
Wojciech Tyczynski 9a5d0e0fa0 Test non-default etcdPrefixes. 2016-05-31 10:49:30 +02:00
Piotr Szczesniak 22dc21d703 Removed metrics api group 2016-05-31 09:48:39 +02:00
Lucas Käldström a46a1cdc12 Don't set the env var CC when not cross-compiling 2016-05-30 23:59:34 +03:00
k8s-merge-robot 6136d4c250 Merge pull request #25981 from liggitt/test-cmd-osx
Automatic merge from submit-queue

Allow running test-cmd on osx
2016-05-30 08:16:46 -07:00
Johannes Scheuermann ec26e62ec3 This fixes #26526 the white space problem 2016-05-30 15:32:43 +02:00
Xiangpeng Zhao ab9d60f26e Add a comment 2016-05-30 20:18:06 +08:00
k8s-merge-robot 5fd2bb5c20 Merge pull request #26047 from dims/fix-issue-26041
Automatic merge from submit-queue

Get install-etcd.sh to work on OSX

Check the platform before we download the etcd binary. On OSX, save
the zip file, unzip it and link the directory with the correct
name.

Fixes #26041
2016-05-30 02:19:02 -07:00
Dr. Stefan Schimanski a79a420fde Move shell completion generation into 'kubectl completion' command 2016-05-30 07:23:36 +02:00
Angus Salkeld 5dcbc7ce5b Check for an empty value in validateField
reflect.TypeOf() can take a nil (it then returns a nil), but
Kind() panics on a nil.

Fixes #20627
2016-05-30 14:12:18 +10:00
k8s-merge-robot fe5edcf1b4 Merge pull request #26438 from aanm/adding-etcd-addr-option
Automatic merge from submit-queue

Add -addr option to hack/lib/etcd.h

Added -addr to etcd hack script so it listens on the same address specified in the `host` variable.

Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-29 19:58:14 -07:00
k8s-merge-robot feee4834c8 Merge pull request #25685 from pwittrock/nodee2e
Automatic merge from submit-queue

Support per-test-environment ginkgo flags for node e2e tests to facilitate skipping miss behaving tests in PR builder

We had an issue today where some node e2e tests were timing out in the pr builder.  We want to be able to skip tests in the pr builder and leave them running in the CI if this happens again.


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-29 05:42:51 -07:00
Chao Xu b3df629432 add gc and its enablement flag to kube-controller-manager 2016-05-28 14:12:33 -07:00
k8s-merge-robot a24584465e Merge pull request #24965 from Arvinderpal/add_cni_dir_to_local_cluster_up
Automatic merge from submit-queue

Adds --network-plugin-dir argument to hack/local-up-cluster.sh

CNI Network Plugin developers who want to use hack/local-up-cluster.sh need to specify the --network-plugin-dir option to kubelet.
2016-05-28 11:53:54 -07:00
mfanjie 6133db345f add federation service controller 2016-05-29 00:25:07 +08:00
André Martins 10fb9bdcf3 Add -addr option to hack/lib/etcd.h
Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-28 12:15:45 +01:00
k8s-merge-robot 74b20cccc6 Merge pull request #25813 from rrati/kubelet-pods-per-core
Automatic merge from submit-queue

Added pods-per-core to kubelet. #25762

Added --pods-per-core to kubelet

#25762
2016-05-28 03:08:28 -07:00
k8s-merge-robot 3f455fba12 Merge pull request #26441 from aanm/fixing-local-up-cluster-sh
Automatic merge from submit-queue

Add more global options to local-up-cluster.sh

I added a couple more global variables to the `local-up-cluster.sh` script.

The `KUBELET_HOST` environment name make sense to me. If it isn't the best name I will change it.

The `ETCD` ones make sense since they are being used under `hack/lib/etcd.sh`

Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-28 01:30:55 -07:00
k8s-merge-robot 011258917b Merge pull request #26465 from david-mcmahon/addvendor
Automatic merge from submit-queue

Verify changes against upstream vendor/ as well.

cc @ixdy
2016-05-28 00:43:37 -07:00
k8s-merge-robot a5222574d4 Merge pull request #25614 from justinsb/feature/flag-configure-cloud-routes
Automatic merge from submit-queue

kube-controller-manager: Add configure-cloud-routes option

This allows kube-controller-manager to allocate CIDRs to nodes (with
allocate-node-cidrs=true), but will not try to configure them on the
cloud provider, even if the cloud provider supports Routes.

The default is configure-cloud-routes=true, and it will only try to
configure routes if allocate-node-cidrs is also configured, so the
default behaviour is unchanged.

This is useful because on AWS the cloud provider configures routes by
setting up VPC routing table entries, but there is a limit of 50
entries.  So setting configure-cloud-routes on AWS would allow us to
continue to allocate node CIDRs as today, but replace the VPC
route-table mechanism with something not limited to 50 nodes.

We can't just turn off the cloud-provider entirely because it also
controls other things - node discovery, load balancer creation etc.

Fix #25602
2016-05-27 23:52:51 -07:00
k8s-merge-robot 5b03fd5697 Merge pull request #26448 from pwittrock/fix-26318-kubemark-junit-results
Automatic merge from submit-queue

Kubemark e2e tests should exit 0 for test failures.

Fixed #26318
2016-05-27 23:04:36 -07:00
k8s-merge-robot 4aa8c7340b Merge pull request #26333 from fejta/ssh
Automatic merge from submit-queue

Push public key to project if not already present

Fixes https://github.com/kubernetes/kubernetes/issues/26128
Fixes https://github.com/kubernetes/kubernetes/issues/26129

Whenever the ssh key changes (which happens right now whenever we add/change a new jenkins agent) this key will not get pushed to the project until either `gcloud compute ssh` or `gcloud compute config-ssh` runs. As a result instances on this project will reject ssh attempts with this key.

In many cases this will not happen until after a test on a project fails and we attempt to ssh to the nodes to grab logs.

This verifies the presence of the ssh key before starting tests, and attempts to add it if it is missing.
2016-05-27 22:10:19 -07:00
David McMahon 12edc97862 Verify changes against upstream vendor/ as well. 2016-05-27 16:27:42 -07:00
André Martins bd37100713 Add more global env vars to local-up-cluster.sh
Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-27 23:58:01 +01:00
Phillip Wittrock c3e1c12985 Kubemark e2e tests should exit 0 for test failures.
Jenkins relies on junit.xml to identify test failures
and non-0 exit codes to indentify infrastructure failures.
Test failures in kubemark tests should not cause the test
script to exit non-0.  Infrastructure failures should.

- Add function to dump cluster logs without exiting (refactor)
- Change `test/kubemark/stop-kubemark.sh` to be run regardless of whether tests fail or not
- Exit code for failed tests overwritten to be the exit code of dumping the cluster logs
2016-05-27 15:45:18 -07:00
Alex Robinson 90ca2aae24 Merge pull request #26423 from wojtek-t/speedup_update_codecget
Speedup update_codecgen by precomputing dependencies.
2016-05-27 14:19:08 -07:00
Erick Fejta 0e1c2ee20c Push public key to project if not already present 2016-05-27 13:56:18 -07:00
Wojciech Tyczynski 92fc59cacf Speedup update_codecgen by precomputing dependencies. 2016-05-27 22:01:06 +02:00
André Martins 8497255bcd Add -g curl option to hack/lib/util.sh wait_for_url
Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-27 20:50:38 +01:00
Alex Robinson aa4e182656 Merge pull request #26094 from mhrgoog/godeps_verify_echo
Godeps verify echo
2016-05-27 11:27:01 -07:00
Tim Hockin 847b56b253 Simplify godep licenses logic
This code used to actually reach out to the internet to look for files.  This
is flaky, slow, and semantically WRONG.  The license that is upstream might
actually be different than what we have vendored.  Only look at local files.

This now passes back-to-back updates and verifies.
2016-05-27 10:01:27 -07:00
Justin Santa Barbara b754393630 kube-controller-manager: Add configure-cloud-routes option
This allows kube-controller-manager to allocate CIDRs to nodes (with
allocate-node-cidrs=true), but will not try to configure them on the
cloud provider, even if the cloud provider supports Routes.

The default is configure-cloud-routes=true, and it will only try to
configure routes if allocate-node-cidrs is also configured, so the
default behaviour is unchanged.

This is useful because on AWS the cloud provider configures routes by
setting up VPC routing table entries, but there is a limit of 50
entries.  So setting configure-cloud-routes on AWS would allow us to
continue to allocate node CIDRs as today, but replace the VPC
route-table mechanism with something not limited to 50 nodes.

We can't just turn off the cloud-provider entirely because it also
controls other things - node discovery, load balancer creation etc.

Fix #25602
2016-05-27 09:42:20 -04:00
Wojciech Tyczynski 19ccbb9f99 Speed up test, by not running with custom etcd prefix 2016-05-27 14:30:24 +02:00
Robert Rati 2d487f7c06 Added pods-per-core to kubelet. #25762 2016-05-27 07:10:13 -04:00
k8s-merge-robot 227b8bad81 Merge pull request #26365 from janetkuo/tag-test-image
Automatic merge from submit-queue

Prevent use of ":latest" or untagged gcr.io images 

Ref #20836
[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-27 01:12:57 -07:00
Eric Paris cd700ee3eb Merge pull request #26313 from nikhiljindal/fedServerDoc
federation: Adding a tool to generate docs for federation apiserver and controller manager
2016-05-26 23:09:51 -04:00
Phillip Wittrock 1d91d24548 Allow per-environment ginkgo flags to be passed to the node e2e tests so that we can selectively disable slow tests in the PR builder when needed. 2016-05-26 15:05:40 -07:00
Alex Mohr edda837142 Merge pull request #25599 from caesarxuchao/orphaning-finalizer
Add orphaning finalizer logic to GC
2016-05-26 13:19:19 -07:00
Alex Mohr 6f919dc6fc Merge pull request #25634 from ericchiang/rbac_api_group
Add RBAC authorization API group and authorizer
2016-05-26 12:36:53 -07:00
Alex Mohr 4357b8a0a6 Merge pull request #25324 from jfrazelle/add-seccomp
Add Seccomp to Annotations
2016-05-26 10:50:06 -07:00
Alex Mohr 6b169eaa85 Merge pull request #25125 from colhom/federation-e2e
e2e tests for federated-apiserver
2016-05-26 10:40:30 -07:00
Janet Kuo 0f42def115 Fix incorrect gofmt hint 2016-05-26 10:27:45 -07:00
Janet Kuo d18438406b Add check to prevent use of untagged or :latest gcr.io images in e2e tests 2016-05-26 10:27:31 -07:00
Abhi Shah 965e8dce12 Merge pull request #26114 from ArtfulCoder/dnsport
Add dnsmasq as a DNS cache in kube-dns pod
2016-05-26 08:13:58 -07:00
k8s-merge-robot 44de311c0a Merge pull request #24826 from caesarxuchao/autogenerate-1-3
Automatic merge from submit-queue

Add release_1_3 clientset in update-codegen

Add release_1_3 clientset in update-codegen to keep it update-to-date; update the generated clientset.
2016-05-26 05:21:32 -07:00
k8s-merge-robot bda0dc88aa Merge pull request #25457 from saad-ali/expectedStateOfWorldDataStructure
Automatic merge from submit-queue

Attach Detach Controller Business Logic

This PR adds the meat of the attach/detach controller proposed in #20262.

The PR splits the in-memory cache into a desired and actual state of the world.
2016-05-26 00:41:54 -07:00
Chao Xu cc4ffe0714 add release_1_3 clientset in update-codegen 2016-05-25 21:14:16 -07:00
k8s-merge-robot 128e7f13af Merge pull request #26243 from metral/fix-pause
Automatic merge from submit-queue

use kubectl-with-retry on pause & resume

attempts to fix https://github.com/kubernetes/kubernetes/issues/25645 by using `kubectl-with-retry` on `rollout {pause,resume}` (`resume` is for safe measures) instead of `kubectl` directly, as is done with other `rollout {pause,resume}` tests in this same script.
2016-05-25 19:49:45 -07:00
Colin Hom a092fd2dd4 Federation build and e2e test integration
Federation components are now buildable and e2e-testable via e2e.go.
2016-05-25 15:07:27 -07:00
nikhiljindal f98bda0b47 Adding a tool to generate federation docs 2016-05-25 15:04:20 -07:00
Eric Chiang 323e804f39 add rbac for tests and kubectl 2016-05-25 14:25:56 -07:00
Eric Chiang ef40aa9572 pkg/master: enable certificates API and add rbac authorizer 2016-05-25 14:24:47 -07:00
Mike Metral 54e6d2356c use kubectl-with-retry on pause & resume 2016-05-25 13:37:57 -07:00
k8s-merge-robot e8f3cc9072 Merge pull request #26101 from pwittrock/node-e2e-junit
Automatic merge from submit-queue

Node e2e junit test artifacts


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()

- Add junit test reported
- Write etcd.log, kubelet.log and kube-apiserver.log to files instead of stdout
- Scp artifacts to the jenkins WORKSPACE

Fixes #25966
2016-05-25 02:45:56 -07:00
k8s-merge-robot 201aa24b85 Merge pull request #25701 from wonderfly/drop_trusty
Automatic merge from submit-queue

e2e-runner: Drop Trusty support in favor of GCI

Now that GCI (Google Container-VM Image) is out, we will start running e2e tests
with it instead of Ubuntu Trusty. This change updates `e2e-runner.sh` to replace
the Trusty related logic with GCI.

_Note that this change has to go in the same time as https://github.com/kubernetes/test-infra/pull/54_

@spxtr Can you review?

cc/ @andyzheng0831 @kubernetes/goog-image
2016-05-25 00:58:18 -07:00
Abhishek Shah 10f9789bc3 added dnsmasq container in kubedns pod 2016-05-25 00:23:57 -07:00
saadali 92500a20d7 Attach detach controller business logic added
Split controller cache into actual and desired state of world.
Controller will only operate on volumes scheduled to nodes that
have the "volumes.kubernetes.io/controller-managed-attach" annotation.
2016-05-24 23:01:16 -07:00
xiangpengzhao 6d2b72d3b9 Set no_proxy for localhost 2016-05-24 20:26:16 -04:00
Mike Danese 1ef1906209 Merge pull request #26197 from wonderfly/update_default_master_image
Replace containervm with GCI as default master image for GCE clusters
2016-05-24 16:58:14 -07:00
pwittrock eae1961599 Node e2e export test artifacts to jenkins.
- Add junit test reported
- Write etcd.log, kubelet.log and kube-apiserver.log to files instead of stdout
- Scp artifacts to the jenkins WORKSPACE

Fixes #25966
2016-05-24 23:00:58 +00:00
Daniel Wang 3d95151971 Replace containervm with GCI as default master image for GCE clusters 2016-05-24 17:28:17 -05:00
k8s-merge-robot f5b5d2bc26 Merge pull request #26196 from nikhiljindal/renameFedAPIServer
Automatic merge from submit-queue

Renaming federated-apiserver to federation-apiserver

Its not a "federated" apiserver. Its an apiserver for federation.

The corresponding controller manager is also called federation-controller-manager.

If we are going to rename, it should be done in 1.3 before people write scripts referencing the binary name.
2016-05-24 15:21:11 -07:00
k8s-merge-robot 50524c78a1 Merge pull request #20672 from brendandburns/dump
Automatic merge from submit-queue

Add a 'kubectl clusterinfo dump' option

Ref: #3500 

@bgrant0607 @smarterclayton @jszczepkowski 

Usage:
```
  # Dump current cluster state to stdout
  kubectl clusterinfo dump
  
  # Dump current cluster state to /tmp
  kubectl clusterinfo dump --output-directory=/tmp
  
  # Dump all namespaces to stdout
  kubectl clusterinfo dump --all-namespaces
  
  # Dump a set of namespaces to /tmp
  kubectl clusterinfo dump --namespaces default,kube-system --output-directory=/tmp
```

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/20672)
<!-- Reviewable:end -->
2016-05-24 14:24:17 -07:00
Chao Xu 1665546d2d add finalizer logics to the API server and the garbage collector; handling DeleteOptions.OrphanDependents in the API server 2016-05-24 13:07:28 -07:00
Jess Frazelle aa8c72adaa
seccomp: add annotations and test for docker runtime
Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-05-24 12:25:21 -07:00
nikhiljindal 991eb753a2 Renaming federated-apiserver to federation-apiserver 2016-05-24 11:49:39 -07:00
Janet Kuo 89df549016 Add pre-condition before editing pod in test-cmd.sh 2016-05-23 15:04:43 -07:00
Davanum Srinivas 0f94aeada2 Get install-etcd.sh to work on OSX
Check the platform before we download the etcd binary. On OSX, save
the zip file, unzip it and link the directory with the correct
name.

Fixes 26041
2016-05-23 17:34:52 -04:00
Michael Rubin 7900d0897d Adding "Pass/Fail" echo 2016-05-23 12:03:56 -07:00
Jordan Liggitt 33ae2b856e Allow running test-cmd on osx 2016-05-23 13:01:04 -04:00
Andy Zheng f31c4f6d69 Revert "Revert "Add support for running GCI on the GCE cloud provider""
This reverts commit 40f53b1765.
2016-05-23 00:52:08 -07:00
k8s-merge-robot 086ace44b8 Merge pull request #25548 from jlowdermilk/lower-ginkgo-parallelism
Automatic merge from submit-queue

Lower ginkgo parallelism and move same image rolling-update test out of flaky

Tentative fix for #25140.
2016-05-22 18:43:57 -07:00
k8s-merge-robot 0257f54a8c Merge pull request #24850 from madhusudancs/speedup-do-nothing
Automatic merge from submit-queue

Improve the speed of do-nothing build.

As @thockin found out here https://github.com/kubernetes/kubernetes/issues/24518, vast majority of the do-nothing build time is spent in rebuilding the test binaries. There is no staleness check support for test binaries.

This commit implements the staleness checks for test binaries and uses them while building packages.

On my workstation, do-nothing hack/build-go.sh time goes from ~20 secs to ~4 secs, of which only ~1 sec is from doing test binary staleness check now (as opposed to ~17 secs it took to build the test binaries before). I did some experiments to bring this time down to <1 sec. I measured using go test -bench, but it was not very useful in this case. I believe, a vast majority of that ~1 second is being spent in fork/exec and piping the results back to the staleness check program along with the ser-deser involved, but it needs to be validated. Not a proof, but to provide some supporting evidence to this claim, running `go list -f format packages` in the shell takes about 600ms irrespective of what's in the format.

Tests are TBD. I am still trying to figure out how to test this, but I would like to get early feedback

cc @mikedanese @mml
2016-05-22 10:33:04 -07:00
Mike Metral 4913481b05 enable recursive processing in kubectl edit 2016-05-22 09:49:11 -07:00
k8s-merge-robot 39f0c6ba25 Merge pull request #24719 from bprashanth/kubectl_tls
Automatic merge from submit-queue

Add a kubectl create secret tls command

A somewhat hasty implementation that enables progress along: https://github.com/kubernetes/kubernetes/issues/20176#issuecomment-177409516, https://github.com/kubernetes/kubernetes/issues/24669, https://github.com/kubernetes/kubernetes/issues/20176#issuecomment-198142836 if associated parties have spare cycles. @kubernetes/kubectl

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24719)
<!-- Reviewable:end -->
2016-05-22 09:40:42 -07:00
k8s-merge-robot a503bb828a Merge pull request #24653 from gtank/go-devel-builds
Automatic merge from submit-queue

hack: allow devel builds of go

This is issue https://github.com/kubernetes/kubernetes/issues/6913. It seems reasonable that someone running a devel build is responsible for making sure it's a sane version.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24653)
<!-- Reviewable:end -->
2016-05-22 08:51:54 -07:00
k8s-merge-robot 82cb4c1758 Merge pull request #23930 from ArtfulCoder/vendor-skydns
Automatic merge from submit-queue

Use SkyDNS as a library for a more integrated kube DNS
2016-05-21 23:33:35 -07:00
k8s-merge-robot 9e8282c586 Merge pull request #25838 from cjcullen/authzcache
Automatic merge from submit-queue

Cache webhook authorization responses

Similar to #25694, but for authorization.
2016-05-21 20:34:34 -07:00
Cole Mickens 6d774c9d37 add hack/dev-push-hyperkube.sh 2016-05-21 15:44:46 -07:00
CJ Cullen d03dbbcc14 Add LRU Expire cache to webhook authorizer. 2016-05-21 14:50:50 -07:00
k8s-merge-robot 346f965871 Merge pull request #25694 from cjcullen/authncache
Automatic merge from submit-queue

Cache Webhook Authentication responses

Add a simple LRU cache w/ 2 minute TTL to the webhook authenticator.

Kubectl is a little spammy, w/ >= 4 API requests per command. This also prevents a single unauthenticated user from being able to DOS the remote authenticator.
2016-05-21 10:48:38 -07:00
k8s-merge-robot 88daa2efde Merge pull request #25611 from soltysh/remote_check
Automatic merge from submit-queue

Update upstream remote regex

I've fixed the upstream remote regex so that it properly recognizes ssh link, like this one: 
```
upstream git@github.com:kubernetes/kubernetes.git (fetch)
``` 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-21 01:34:10 -07:00
k8s-merge-robot 46504c2042 Merge pull request #14943 from vishh/qos
Automatic merge from submit-queue

Updaing QoS policy to be at the pod level

Quality of Service will be derived from an entire Pod Spec, instead of being derived from resource specifications of individual resources per-container.
A Pod is `Guaranteed` iff all its containers have limits == requests for all the first-class resources (cpu, memory as of now).
A Pod is `BestEffort` iff requests & limits are not specified for any resource across all containers.
A Pod is `Burstable` otherwise. 

Note: Existing pods might be more susceptible to OOM Kills on the node due to this PR! To protect pods from being OOM killed on the node, set `limits` for all resources across all containers in a pod.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/14943)
<!-- Reviewable:end -->
2016-05-20 22:58:04 -07:00
k8s-merge-robot 70cd282f11 Merge pull request #25944 from pwittrock/fix-24905
Automatic merge from submit-queue

Pre-pull images in node e2e-tests.  Possible resolution for #24905



[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-20 18:50:11 -07:00
Mike Danese fbf6bbc49a Merge pull request #25596 from derekparker/inotify
kubelet: Optionally, have kubelet exit if lock file contention is observed, using --exit-on-lock-contention flag
2016-05-20 16:40:10 -07:00
Abhishek Shah a92ea56024 added build stuff for kube-dns 2016-05-20 15:08:11 -07:00
Vishnu kannan a64fe6572a satisfy flags check script by including a few files
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-05-20 15:03:26 -07:00
k8s-merge-robot f935507235 Merge pull request #19242 from mqliang/node-controller
Automatic merge from submit-queue

add CIDR allocator for NodeController

This PR:

* use pkg/controller/framework to watch nodes and	reduce lists when allocate CIDR for node
* decouple the cidr allocation logic from monitoring status logic

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/19242)
<!-- Reviewable:end -->
2016-05-20 09:45:05 -07:00
k8s-merge-robot 2c471bce4e Merge pull request #25509 from janetkuo/kubectl-set-image
Automatic merge from submit-queue

Add 'kubectl set image'

```release-note
Add "kubectl set image" for easier updating container images (for pods or resources with pod templates). 
```

**Usage:**
```
kubectl set image (-f FILENAME | TYPE NAME) CONTAINER_NAME_1=CONTAINER_IMAGE_1 ... CONTAINER_NAME_N=CONTAINER_IMAGE_N
```
**Example:**
```console 
# Set a deployment's nginx container image to 'nginx:1.9.1', and its busybox container image to 'busybox'.
$ kubectl set image deployment/nginx busybox=busybox nginx=nginx:1.9.1

# Update all deployments' nginx container's image to 'nginx:1.9.1'
$ kubectl set image deployments nginx=nginx:1.9.1 --all

# Update image of all containers of daemonset abc to 'nginx:1.9.1'
$ kubectl set image daemonset abc *=nginx:1.9.1

# Print result (in yaml format) of updating nginx container image from local file, without hitting the server 
$ kubectl set image -f path/to/file.yaml nginx=nginx:1.9.1 --local -o yaml
```

I abandoned the `--container=xxx --image=xxx` flags in the [deploy proposal](https://github.com/kubernetes/kubernetes/blob/master/docs/proposals/deploy.md#kubectl-set) since it's much easier to use with just KEY=VALUE (CONTAINER_NAME=CONTAINER_IMAGE) pairs. 

Ref #21648 
@kubernetes/kubectl @bgrant0607 @kubernetes/sig-config 


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-20 07:13:45 -07:00
mqliang 17d5a302bb make podcidr mask size configurable 2016-05-20 20:44:40 +08:00
k8s-merge-robot 2c038e38c5 Merge pull request #25817 from ihmccreery/fix-skew-kubectl
Automatic merge from submit-queue

Fix JENKINS_USE_SKEW_KUBECTL

I got this logic wrong; the first is a NOT comparison, so the second should only be available if that NOT comparison returns true.
2016-05-20 04:42:19 -07:00
k8s-merge-robot 97a7d009ad Merge pull request #25708 from ixdy/node-e2e-test-timeout
Automatic merge from submit-queue

Add a timeout to the node e2e Ginkgo test runner

Also add a few debugging statements to indicate progress.

Should help prevent #25639, since we'll timeout tests before Jenkins times out the build.
2016-05-20 04:42:16 -07:00
k8s-merge-robot e851d749e4 Merge pull request #25583 from chrislovecnm/cassandra-image-bump
Automatic merge from submit-queue

Cassandra examples updating images to v9

- this is a version bump for the C* image
- I also increased the cpu to .5 because .1 is slow like warm death

Who can actually run the build to get the container to the examples repo?
2016-05-20 04:42:12 -07:00
Filip Grzadkowski 31c1825856 Merge pull request #25753 from dlorenc/nodecount
Add a flag that lets e2e tests be run against single-node clusters.
2016-05-20 10:30:12 +02:00
Phillip Wittrock 839f4f8dd2 Pre-pull images in node e2e-tests. Possible resolution for #24905 2016-05-20 05:22:30 +00:00
Daniel Wang fe7dd4cae7 e2e-runner: Drop Trusty support in favor of GCI
Now that GCI (Google Container-VM Image) is out, we will start running e2e tests
with it instead of Ubuntu Trusty. This change updates `e2e-runner.sh` to replace
the Trusty related logic with GCI.
2016-05-19 17:51:53 -07:00
k8s-merge-robot 505fb85726 Merge pull request #25920 from wonderfly/use_base_image
Automatic merge from submit-queue

Jenkins: start using base images for Trusty tests

@spxtr Can you review this XS change?

cc/ @kubernetes/goog-image
2016-05-19 17:13:27 -07:00
Daniel Wang 967b869c67 Jenkins: start using base images for Trusty tests 2016-05-19 15:23:30 -07:00
Clayton Coleman 2c9b83f291 Disable ppc64le for now 2016-05-19 10:19:35 -04:00
Daniel Smith 40f53b1765 Revert "Add support for running GCI on the GCE cloud provider" 2016-05-18 21:31:28 -07:00