Commit Graph

40906 Commits (b43e2134a2a4b9aa2edef180d861e10d7181d54a)

Author SHA1 Message Date
Zihong Zheng b43e2134a2 Adds e2e firewall tests.
For LoadBalancer type service:
- Verifies corresponding firewall rule has correct sourceRanges, ports
  & protocols, target tags.
- Verifies requests can reach all expected instances.
- Verifies requests can not reach instances that are not included.

For Ingress resrouce:
- Verifies the ingress firewall rule has correct sourceRanges, target
  tags and tcp ports.

For general e2e cluster:
- Verifies all required firewall rules has correct sourceRange, ports
  & protocols, source tags and target tags.
- Verifies well know ports on master and nodes are not
  exposed externally
2016-12-16 14:31:30 -08:00
Kubernetes Submit Queue e3c6ab1c8f Merge pull request #35582 from surajssd/use-daemonset-registry-proxy
Automatic merge from submit-queue

Use daemonset in docker registry add on

When using registry add on with kubernetes cluster it will be right to use `daemonset` to bring up a pod on each node of cluster, right now the docs suggests to bring up a pod on each node manually by dropping the pod manifests into directory `/etc/kubernetes/manifests`.
2016-12-16 12:29:46 -08:00
Kubernetes Submit Queue faf959b522 Merge pull request #38869 from deads2k/api-52-in-cluster
Automatic merge from submit-queue

use in-cluster kubeconfig for genericapiserver

Allow the use of the in-cluster config to communicate with the core API server for delegated authn/authz for an addon API server.

@kubernetes/sig-api-machinery @sttts
2016-12-16 11:30:27 -08:00
Kubernetes Submit Queue 84d0fbdb2e Merge pull request #38643 from bprashanth/ing_avoid_nodeport
Automatic merge from submit-queue

Don't check nodeport for nginx ingress

Services behind a standard nginx ingress don't need nodeport, so don't check that.
2016-12-16 10:46:56 -08:00
Kubernetes Submit Queue 9bc98e2a38 Merge pull request #37299 from rrati/node-affinity-api-fields
Automatic merge from submit-queue (batch tested with PRs 38730, 37299)

[scheduling] Moved node affinity from annotations to api fields. #35518

Converted node affinity from annotations to api fields

Fixes: #35518 
Related: #25319
Related: #34508

**Release note**:
```release-note
Node affinity has moved from annotations to api fields in the pod spec.  Node affinity that is defined in the annotations will be ignored.
```
2016-12-16 10:46:25 -08:00
Kubernetes Submit Queue 46e5f21676 Merge pull request #38730 from ixdy/download-kube-binaries-if-needed
Automatic merge from submit-queue

Automatically download missing kube binaries in kube-up/kube-down.

**What this PR does / why we need it**: some users extract `kubernetes.tar.gz` and then immediately call `cluster/kube-up.sh` without first calling the new `cluster/get-kube-binaries.sh` script. As a result, the cluster fails to start, but it's not immediately clear why binaries are missing.

This PR streamlines this workflow by detecting this condition and prompting the user to download necessary binaries (using `cluster/get-kube-binaries.sh`).

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

cc @arun-gupta @christian-posta
2016-12-16 10:07:22 -08:00
deads2k bbcbdaffd1 use in-cluster kubeconfig for genericapiserver 2016-12-16 12:40:33 -05:00
Robert Rati 11c577f092 [scheduling] Auto-generated file updates from moving node affinity from
annotations to api fields. #35518
2016-12-16 11:42:43 -05:00
Robert Rati 91931c138e [scheduling] Moved node affinity from annotations to api fields. #35518 2016-12-16 11:42:43 -05:00
Kubernetes Submit Queue 1eb9176455 Merge pull request #38814 from jszczepkowski/ha-validation-fix
Automatic merge from submit-queue

Fixed infinite loop in cluster validation.
2016-12-16 08:06:14 -08:00
Kubernetes Submit Queue 08342c1f3e Merge pull request #38825 from enj/enj/i/store_dead_code/38822
Automatic merge from submit-queue

Remove dead code in `pkg/registry/generic/registry/store.go`

Fixes #38822

Depending on the intent of the original code, the correct fix may instead be:

```go
if name, ok := p.MatchesSingle(); ok {
	key, err := e.KeyFunc(ctx, name)
	if err != nil {
		return nil, err
	}
	w, err := e.Storage.Watch(ctx, key, resourceVersion, p)
	if err != nil {
		return nil, err
	}
	if e.Decorator != nil {
		return newDecoratedWatcher(w, e.Decorator), nil
	}
	return w, nil
	// if we cannot extract a key based on the current context, the optimization is skipped
}
```

Signed-off-by: Monis Khan <mkhan@redhat.com>

cc @deads2k
2016-12-16 06:31:12 -08:00
Kubernetes Submit Queue de3b73bd43 Merge pull request #38826 from sttts/sttts-secret-routes-real-mux
Automatic merge from submit-queue

genericapiserver: turn APIContainer.SecretRoutes into a real ServeMux

The secret routes `Mux` is actually a `http.ServeMux` and we are type-casting to it. For downstream we want to wrap it into a restful container which also needs a real `http.ServeMux`.
2016-12-16 05:51:45 -08:00
Kubernetes Submit Queue 0d80ee0b8d Merge pull request #38767 from kargakis/fix-setting-container-name-in-create-deployment
Automatic merge from submit-queue

kubectl: fix 'create deployment' to set container name correctly

@kubernetes/kubectl @kubernetes/sig-cli
2016-12-16 04:38:22 -08:00
Kubernetes Submit Queue 5b240ca897 Merge pull request #36748 from kargakis/remove-events-from-deployment-tests
Automatic merge from submit-queue

Fix Recreate for Deployments and stop using events in e2e tests

Fixes https://github.com/kubernetes/kubernetes/issues/36453 by removing events from the deployment tests. The test about events during a Rolling deployment is redundant so I just removed it (we already have another test specifically for Rolling deployments).

Closes https://github.com/kubernetes/kubernetes/issues/32567 (preferred to use pod LISTs instead of a new status API field for replica sets that would add many more writes to replica sets).

@kubernetes/deployment
2016-12-16 03:57:02 -08:00
Jerzy Szczepkowski 3dbfa94798 Fixed infinite loop in cluster validation.
Fixed infinite loop in cluster validation when getting nodes failed.
2016-12-16 12:07:26 +01:00
Kubernetes Submit Queue cf2dc3968b Merge pull request #38750 from shashidharatd/federation-ci
Automatic merge from submit-queue (batch tested with PRs 38830, 38750)

[Federation] Stop cleaning federation namespace in e2e tests

when --clean-start=true flag is provided to e2e tests it would cleanup all the leftover namespaces except `default` and `kube-system` and because of this when we run e2e tests in federation soak test job, the federation control plane is destroyed before it runs the tests and all tests start to fail.

So adding federation-system to the list of namespace to be left intact and also changed the default federation namespace name from `federation` to `federation-system` to be consistent with the newer method of deploying federation using kubefed.

@madhusudancs  @nikhiljindal
2016-12-16 02:16:17 -08:00
Kubernetes Submit Queue 2a619d543f Merge pull request #38830 from krousey/e2eutil
Automatic merge from submit-queue (batch tested with PRs 38830, 38750)

Remove the ReadyReplica version guard

**What this PR does / why we need it**: Removes outlived version guards.

**Which issue this PR fixes**: fixes #37310
2016-12-16 02:16:16 -08:00
Dr. Stefan Schimanski e49fb2f1f4 genericapiserver: rename SecretRoutes -> UnlistedRoutes 2016-12-16 11:04:29 +01:00
shashidharatd b58216e333 Stop cleaning federation namespace in e2e tests 2016-12-16 14:21:40 +05:30
Kubernetes Submit Queue aa454ec740 Merge pull request #37215 from shashidharatd/fed-ci
Automatic merge from submit-queue

[Federation][init-11.2] use USE_KUBEFED env var to choose bw old and new federation deployment

This is continuation of #35961
USE_KUBEFED variable is used for deploying federation control plane. if not defined, federation will be brought up using old method i.e scripts.

Have verified that federation comes up using the old method, using following steps
```
$ export FEDERATION=true
$ export E2E_ZONES="asia-east1-c"
$ export FEDERATION_PUSH_REPO_BASE=gcr.io/<my-project>
$ KUBE_RELEASE_RUN_TESTS=n KUBE_FASTBUILD=true go run hack/e2e.go -v -build
$ build-tools/push-federation-images.sh
$ go run hack/e2e.go -v --up
```
Should merge #35961 before this PR

@madhusudancs
2016-12-16 00:33:35 -08:00
Dr. Stefan Schimanski df7e711c0a genericapiserver: turn APIContainer.SecretRoutes into a real ServeMux 2016-12-16 09:18:18 +01:00
Kubernetes Submit Queue 87444522d0 Merge pull request #32088 from piosz/fluentd-daemon-set
Automatic merge from submit-queue

Migrated fluentd addon to daemon set

fix #23224
supersedes #23306 

``` release-note
Migrated fluentd addon to daemon set
```
2016-12-15 23:04:40 -08:00
shashidharatd fd01ed8fdb [Federation][init-11.2] use USE_KUBEFED env var to choose bw old and new federation deployment 2016-12-16 11:22:44 +05:30
Madhusudan.C.S 5a7644c502 [Federation][init-11] Switch federation e2e tests to use the new federation control plane bootstrap via the `kubefed init` command. 2016-12-16 11:22:44 +05:30
Kubernetes Submit Queue e2a9fc1022 Merge pull request #38841 from mikedanese/fix-tests
Automatic merge from submit-queue

bazel: fix some unit tests
2016-12-15 20:19:46 -08:00
Kubernetes Submit Queue 5ec2fb0bcc Merge pull request #38845 from Random-Liu/fix-node-conformance-report-prefix
Automatic merge from submit-queue

Node Conformance Test: Fix report prefix for node conformance test.

The node conformance CI is running now.

The only problem is that junit files overwrite each other because of the lack of junit prefix. http://gcsweb.k8s.io/gcs/kubernetes-jenkins/logs/ci-kubernetes-node-kubelet-conformance/42/artifacts/

This PR fixes this. I've verified in my environment, it works well.

@timstclair
2016-12-15 18:45:03 -08:00
Mike Danese 8fdec87d19 bazel: fix some unit tests 2016-12-15 18:36:22 -08:00
Kubernetes Submit Queue 15059e6a5b Merge pull request #38839 from janetkuo/remove-GroupMeta-Codec
Automatic merge from submit-queue (batch tested with PRs 38842, 38839)

Remove GroupMeta.Codec

Fixes #21826
2016-12-15 18:08:15 -08:00
Kubernetes Submit Queue b13d25aa84 Merge pull request #38842 from david-mcmahon/fix-150-notes
Automatic merge from submit-queue

Add missing previous releases.

ref https://github.com/kubernetes/release/pull/235
2016-12-15 18:00:39 -08:00
Kubernetes Submit Queue 092a3b79bc Merge pull request #38688 from dshulyak/cleanup_recreate_test
Automatic merge from submit-queue (batch tested with PRs 35945, 38688)

Move test for evicted pet to Basic StatefulSet functionality block
2016-12-15 17:16:15 -08:00
Kubernetes Submit Queue c1c0583d09 Merge pull request #35945 from jianhuiz/federation-apiserver-batch-job-client
Automatic merge from submit-queue

Federation apiserver batch job client

generate internal and 1.5 client for federated job
requires #35943

@quinton-hoole @nikhiljindal @deepak-vij
#34261
2016-12-15 16:56:18 -08:00
David McMahon 60b4794a17 Add missing previous releases.
ref github.com/kubernetes/release/pull/235
2016-12-15 16:43:58 -08:00
Kubernetes Submit Queue 7ca5f92b58 Merge pull request #38780 from mikedanese/ds-fix1
Automatic merge from submit-queue

daemonset: bail out after we enqueue once

This isn't terrible because we dedup in the queue but it's a waste of
cycles.
2016-12-15 16:15:52 -08:00
Kubernetes Submit Queue 8d71970dcd Merge pull request #36462 from mikedanese/discovery
Automatic merge from submit-queue

kubeadm: refactor discovery behind an interface

This adds support for alternative discovery methods using discovery urls. It is a breaking change. This is a WIP.

Example usage:
```
$ kubeadm init --discovery token://
$ kubeadm join --discovery token://c05de9:ab224260fb3cd718@192.168.0.1:6555,191.168.0.2:6443
$ kubeadm join --discovery file:///etc/kubernetes/cluster.json
$ kubeadm join --discovery https://storage.google.apis.com/kube-discovery/98ea6e4/kubeconfig.json
```

@kubernetes/sig-cluster-lifecycle
2016-12-15 15:35:26 -08:00
Random-Liu c57f2ec064 Fix report prefix for node conformance test. 2016-12-15 15:27:14 -08:00
Kubernetes Submit Queue 845187b15a Merge pull request #38647 from deads2k/cli-14-factory
Automatic merge from submit-queue

make kubectl factory composeable

Alternate resolution of https://github.com/kubernetes/kubernetes/pull/38524.

Currently, the kubectl factory cannot be cleanly composed because without polymorphism, any calls which delegate to other factory methods cannot injected.  We cannot reasonably predict everything a composer would want to override, so enumeration of individual "we think this field is important" function is untenable.  On the other hand, having a method registry func and attaching methods to it resulted in chaos before 1.5 and the cleaner interface.

This pull takes the approach of building the factory in "rings" of subfactories.  RingN relies on RingN-1 and the overall factory is a set of nested factories.  No function in a "ring" is allowed to reference a peer function, but it may reference a parent ring's function.  This allows us to easily compose one chain for raw kube, but an extender can simply wrap a particular ring with his custom handling of particular functions and then continue the chain as normal.  This allows customization of each individual function.

It turns out that we have three rings.
 1. discovery, negotiation, and no-dep functions
 1. object typing and type mapping
 1. stuff that relies on type mapping (builder)

This pull does nothing split apart the dependencies.  No behavior changes.  There's more cleanup that could be done (particularly in naming), but I'd like to defer that to a later step.

@kubernetes/sig-cli @fabianofranz @AdoHe this is going to be a pain to rebase, so quick reviews are appreciated.
@ncdc @smarterclayton
2016-12-15 14:51:29 -08:00
Janet Kuo 05a1b3f5a0 Remove GroupMeta.Codec 2016-12-15 14:20:26 -08:00
Kubernetes Submit Queue 853fcc393e Merge pull request #38829 from ixdy/build-tools-rename-back
Automatic merge from submit-queue (batch tested with PRs 38788, 38821, 38829)

Rename build-tools/debs to build/debs

**What this PR does / why we need it**: PR #36129 merged after #38736, and thus created a few files under `build-tools/debs`, which then confused the test and release infra.

cc @madhusudancs @nikhiljindal
2016-12-15 13:57:20 -08:00
Kubernetes Submit Queue 15ce72e393 Merge pull request #38821 from whitlockjc/fix-dev-build-scripts
Automatic merge from submit-queue (batch tested with PRs 38788, 38821, 38829)

hack/dev-build-*: Run dev build instead of release build

The current dev-build-*.sh scripts do a full release build which means
running tests and also doing cross-platform builds.  This is unnecessary
and after discussing this in Slack it was suggested to either blow away
these files or fix them.  This should fix them.

/cc @ixdy, @mml, @thockin
2016-12-15 13:57:18 -08:00
Kubernetes Submit Queue d169d59565 Merge pull request #38788 from Random-Liu/fix-node-conformance-test
Automatic merge from submit-queue (batch tested with PRs 38788, 38821, 38829)

Node Conformance Test: Fix node conformance test.

The test suite could build on my desktop. However it is failing on jenkins.
https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-node-kubelet-conformance/1

It turns out that `docker save $IMAGE -o $FILE` only works for docker 1.12. (My desktop is 1.12) For older version docker, we should use `docker save -o $FILE $IMAGE instead`. (Jenkins is using 1.9.1)

@timstclair Could you help me review this short PR? :)
2016-12-15 13:57:16 -08:00
Mike Danese 7945c437e5 kubeadm: support --discovery token:// 2016-12-15 13:54:49 -08:00
Mike Danese 690c7e578b kubeadm: refactor discovery behind an interface 2016-12-15 13:54:49 -08:00
Kubernetes Submit Queue 82edbf1ddc Merge pull request #38504 from skippbox/buildreadme
Automatic merge from submit-queue

Add build instructions for the impatient

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

* it adds a small section to build k8s for the impatient.
* it fixes a typo
* it removes the code-of-conduct file which was a redirect to the cncf code.

fixes part of #36655
2016-12-15 12:34:04 -08:00
Kubernetes Submit Queue 6b72259320 Merge pull request #38823 from bprashanth/svc_error_eater
Automatic merge from submit-queue

Don't eat 403 in service controller

I haven't done a stress run of Services e2es locally yet, but I did verify that this fixes the specific "stuck in pending bug"
2016-12-15 12:33:55 -08:00
deads2k 50f6733800 make kubectl factory rings 2016-12-15 15:18:16 -05:00
jianhuiz 13b76697a3 add generated federation clientsets for batch/Job 2016-12-15 11:38:16 -08:00
Kris 1d8bebeb2f Remove the ReadyReplica version guard 2016-12-15 11:14:38 -08:00
Jeff Grafton dd7c960aaf Rename build-tools/debs to build/debs 2016-12-15 11:10:23 -08:00
Kubernetes Submit Queue 32946c5bd0 Merge pull request #38820 from jszczepkowski/e2e-not-ready-nodes
Automatic merge from submit-queue (batch tested with PRs 38818, 38813, 38820)

E2E test lib: improved logging of not ready nodes.
2016-12-15 11:04:21 -08:00
Kubernetes Submit Queue 995f4ef2bf Merge pull request #38813 from deads2k/rbac-22-roles
Automatic merge from submit-queue (batch tested with PRs 38818, 38813, 38820)

update for controller RBAC roles

Role and binding updates from running e2e using RBAC during the tests in https://github.com/kubernetes/kubernetes/pull/38626

@sttts should be quick. No obvious typos.  Nothing that looks off.
2016-12-15 11:04:19 -08:00