Commit Graph

5133 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
a22fac00dd Merge pull request #42833 from caesarxuchao/pod-deletion
Automatic merge from submit-queue

Don't wait for the final deletion of pod

The final deletion of the pod depends on kubelet and other components operating correctly. The purpose of this e2e test is verifying the clientset can handle deleteOptions correctly, so waiting for the deletionTimestamp and deletionGraceperiod get set is good enough.

In the long run, we should move this set of e2e tests to integration tests.

Fix #42724 #42646

cc @marun
2017-03-09 13:21:53 -08:00
Kris
cc84e0895a Implement automated downgrade testing.
Node version cannot be higher than the master version, so we must
switch the node version first. Also, we must use the upgrade script
from the appropriate version for GCE.
2017-03-09 12:45:20 -08:00
Chao Xu
130437b94e wait for the deletionTimestamp set instead of waiting for the final deletion 2017-03-09 11:35:51 -08:00
deads2k
ceb3e27fff add debugging to the client watch test 2017-03-09 09:27:41 -05:00
Kubernetes Submit Queue
2828db8f89 Merge pull request #42357 from msau42/disable_storage_class
Automatic merge from submit-queue

Add default storageclass tests

**What this PR does / why we need it**:
Adds test cases for using and disabling the default storageclass.

**Release note**:

NONE
2017-03-09 01:39:42 -08:00
Kubernetes Submit Queue
6b36b3aa20 Merge pull request #42737 from fabianofranz/issues_42697
Automatic merge from submit-queue (batch tested with PRs 42211, 38691, 42737, 42757, 42754)

Fix failing kubectl skew tests

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

Skew kubectl tests [are broken](https://k8s-testgrid.appspot.com/release-1.6-upgrade-skew#gce-1.6-master-cvm-kubectl-skew&width=80) in "Simple pod should handle in-cluster config" for trying to copy the `kubectl.sh` script instead of the actual `kubectl` binary.


**Release note**:

```release-note
NONE
```
2017-03-08 18:52:28 -08:00
Kubernetes Submit Queue
3f5c13f305 Merge pull request #42211 from janetkuo/ds-e2e-template-generation
Automatic merge from submit-queue (batch tested with PRs 42211, 38691, 42737, 42757, 42754)

Add more e2e tests for DaemonSet templateGeneration and pod adoption

Depends on #42173

@erictune @kargakis @lukaszo @kubernetes/sig-apps-pr-reviews
2017-03-08 18:52:21 -08:00
Zihong Zheng
a98992060c dns_autoscaling e2e: Dont expect configMap to be re-created with previous params 2017-03-08 18:15:06 -08:00
David Ashpole
3806d386df use default timeout for deletion 2017-03-08 14:40:19 -08:00
Janet Kuo
cc6ab8c6de Add more e2e tests for DaemonSet templateGeneration and pod adoption 2017-03-08 11:41:30 -08:00
Kubernetes Submit Queue
1402cc588f Merge pull request #42681 from yujuhong/fix_restart
Automatic merge from submit-queue (batch tested with PRs 42652, 42681, 42708, 42730)

e2e: fix restarting the apiserver

The string used to match the image name of the apiserver (e.g., `gcr.io/google_containers/kube-apiserver:3be...`),
but this no longer works. Change the test to locate the kube-apiserver container by name.
2017-03-08 11:38:07 -08:00
Fabiano Franz
335217dddd Fix failing kubectl skew tests 2017-03-08 16:08:47 -03:00
Kubernetes Submit Queue
d306acca86 Merge pull request #42175 from enisoc/controller-ref-dep
Automatic merge from submit-queue

Deployment: Fully Respect ControllerRef

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

This is part of the completion of the [ControllerRef](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md) proposal. It brings Deployment into full compliance with ControllerRef. See the individual commit messages for details.

**Which issue this PR fixes**:

This ensures that Deployment does not fight with other controllers over control of Pods and ReplicaSets.

Ref: https://github.com/kubernetes/kubernetes/issues/24433

**Special notes for your reviewer**:

**Release note**:

```release-note
Deployment now fully respects ControllerRef to avoid fighting over Pods and ReplicaSets. At the time of upgrade, **you must not have Deployments with selectors that overlap**, or else [ownership of ReplicaSets may change](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md#upgrading).
```
cc @erictune @kubernetes/sig-apps-pr-reviews
2017-03-07 20:44:36 -08:00
Tim St. Clair
22d710f9bf
AppArmor cluster upgrade test 2017-03-07 17:15:53 -08:00
Kubernetes Submit Queue
d6ae61c3c9 Merge pull request #42588 from krousey/upgrades
Automatic merge from submit-queue

Create "framework" per upgrade test

There were already a few tests just using the default framework
namespace instead of creating a new one. Also there are several
testing libraries that use the default framework's default namespace
as well. It's just easier this way.
2017-03-07 14:56:12 -08:00
Yu-Ju Hong
9401c39a4e e2e: fix restarting the apiserver 2017-03-07 14:54:59 -08:00
Kubernetes Submit Queue
feb81270d1 Merge pull request #42346 from kargakis/e2e-deployment-fix
Automatic merge from submit-queue

e2e: require minimum completeness in deployment tests

@janetkuo should reduce deployment-related flakes

For example:
https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gci-gke/5334#k8sio-deployment-scaled-rollout-deployment-should-not-block-on-annotation-check
Deployment with 5 pods, all of them updated to the latest replica set. For some reason one of them is never scheduled and even though the strategy parameters in the Deployment allow 2 maxUnavailable the test is stuck for 5mins waiting for the last pod.
```
I0228 12:33:31.406] Feb 28 12:33:20.255: INFO: Pod nginx-2629236890-r7z5n is not available:
I0228 12:33:31.406] {TypeMeta:{Kind: APIVersion:} ObjectMeta:{Name:nginx-2629236890-r7z5n GenerateName:nginx-2629236890- Namespace:e2e-tests-deployment-gctjw SelfLink:/api/v1/namespaces/e2e-tests-deployment-gctjw/pods/nginx-2629236890-r7z5n UID:7095ad3e-fdf4-11e6-af4a-42010af00010 ResourceVersion:7804 Generation:0 CreationTimestamp:2017-02-28 12:28:18.408376434 -0800 PST DeletionTimestamp:<nil> DeletionGracePeriodSeconds:<nil> Labels:map[pod-template-hash:2629236890 name:nginx] Annotations:map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"e2e-tests-deployment-gctjw","name":"nginx-2629236890","uid":"7085ba3f-fdf4-11e6-af4a-42010af00010","apiVersion":"extensions","resourceVersion":"7743"}}
I0228 12:33:31.407] ] OwnerReferences:[{APIVersion:extensions/v1beta1 Kind:ReplicaSet Name:nginx-2629236890 UID:7085ba3f-fdf4-11e6-af4a-42010af00010 Controller:0xc420beccf0}] Finalizers:[] ClusterName:} Spec:{Volumes:[{Name:default-token-58h80 VolumeSource:{HostPath:nil EmptyDir:nil GCEPersistentDisk:nil AWSElasticBlockStore:nil GitRepo:nil Secret:&SecretVolumeSource{SecretName:default-token-58h80,Items:[],DefaultMode:*420,Optional:nil,} NFS:nil ISCSI:nil Glusterfs:nil PersistentVolumeClaim:nil RBD:nil FlexVolume:nil Cinder:nil CephFS:nil Flocker:nil DownwardAPI:nil FC:nil AzureFile:nil ConfigMap:nil VsphereVolume:nil Quobyte:nil AzureDisk:nil PhotonPersistentDisk:nil Projected:nil}}] InitContainers:[] Containers:[{Name:nginx Image:gcr.io/google_containers/update-demo:kitten Command:[] Args:[] WorkingDir: Ports:[] EnvFrom:[] Env:[] Resources:{Limits:map[] Requests:map[]} VolumeMounts:[{Name:default-token-58h80 ReadOnly:true MountPath:/var/run/secrets/kubernetes.io/serviceaccount SubPath:}] LivenessProbe:nil ReadinessProbe:nil Lifecycle:nil TerminationMessagePath:/dev/termination-log TerminationMessagePolicy:File ImagePullPolicy:IfNotPresent SecurityContext:nil Stdin:false StdinOnce:false TTY:false}] RestartPolicy:Always TerminationGracePeriodSeconds:0xc420becd28 ActiveDeadlineSeconds:<nil> DNSPolicy:ClusterFirst NodeSelector:map[] ServiceAccountName:default DeprecatedServiceAccount:default AutomountServiceAccountToken:<nil> NodeName:gke-bootstrap-e2e-default-pool-800b6140-fsl5 HostNetwork:false HostPID:false HostIPC:false SecurityContext:&PodSecurityContext{SELinuxOptions:nil,RunAsUser:nil,RunAsNonRoot:nil,SupplementalGroups:[],FSGroup:nil,} ImagePullSecrets:[] Hostname: Subdomain: Affinity:nil SchedulerName:default-scheduler Tolerations:[]} Status:{Phase:Pending Conditions:[{Type:Initialized Status:True LastProbeTime:0001-01-01 00:00:00 +0000 UTC LastTransitionTime:2017-02-28 12:28:18 -0800 PST Reason: Message:} {Type:Ready Status:False LastProbeTime:0001-01-01 00:00:00 +0000 UTC LastTransitionTime:2017-02-28 12:28:18 -0800 PST Reason:ContainersNotReady Message:containers with unready status: [nginx]} {Type:PodScheduled Status:True LastProbeTime:0001-01-01 00:00:00 +0000 UTC LastTransitionTime:2017-02-28 12:28:18 -0800 PST Reason: Message:}] Message: Reason: HostIP:10.240.0.2 PodIP: StartTime:2017-02-28 12:28:18 -0800 PST InitContainerStatuses:[] ContainerStatuses:[{Name:nginx State:{Waiting:&ContainerStateWaiting{Reason:ContainerCreating,Message:,} Running:nil Terminated:nil} LastTerminationState:{Waiting:nil Running:nil Terminated:nil} Ready:false RestartCount:0 Image:gcr.io/google_containers/update-demo:kitten ImageID: ContainerID:}] QOSClass:BestEffort}}
```

@kubernetes/sig-apps-misc
2017-03-07 09:11:25 -08:00
Kubernetes Submit Queue
5cc6a4e269 Merge pull request #42609 from intelsdi-x/test-out-of-oir
Automatic merge from submit-queue (batch tested with PRs 41890, 42593, 42633, 42626, 42609)

Pods pending due to insufficient OIR should get scheduled once sufficient OIR becomes available (e2e disabled).

#41870 was reverted because it introduced an e2e test flake. This is the same code with the e2e for OIR disabled again.

We can attempt to enable the e2e test cases one-by-one in follow-up PRs, but it would be preferable to get the main fix merged in time for 1.6 since OIR is broken on master (see #41861).

cc @timothysc
2017-03-07 08:10:46 -08:00
Kubernetes Submit Queue
ed04316828 Merge pull request #41890 from soltysh/issue37166
Automatic merge from submit-queue (batch tested with PRs 41890, 42593, 42633, 42626, 42609)

Remove everything that is not new from batch/v2alpha1

Fixes #37166.

@lavalamp you've asked for it 
@erictune this is a prereq for moving CronJobs to beta. I initially planned to put all in one PR, but after I did that I figured out it'll be easier to review separately. ptal 

@kubernetes/api-approvers @kubernetes/sig-api-machinery-pr-reviews ptal
2017-03-07 08:10:38 -08:00
Connor Doyle
364dbc0ca5 Revert "Revert "Pods pending due to insufficient OIR should get scheduled once sufficient OIR becomes available.""
- This reverts commit 60758f3fff.
- Disabled opaque integer resource end-to-end tests.
2017-03-06 17:48:09 -08:00
shiywang
9e2f515cc4 add e2e test for command 2017-03-07 09:25:33 +08:00
Kubernetes Submit Queue
20c13c1564 Merge pull request #42555 from nicksardo/upgrade-ingress-flake
Automatic merge from submit-queue (batch tested with PRs 42080, 41653, 42598, 42555)

Fix resource cleanup in ingress_utils.go within e2e/framework

**What this PR does / why we need it**:
The GLBC is failing to delete resources during the etcd rollback tests and the e2e cleanup is leaking them. After a short while, tests are failing to create new resources. 
This PR addresses the e2e/framework's ability to delete GLBC-created resources and adds more logging.

**Which issue this PR fixes**:
Helps #38569 but does not completely close this flake

**Special notes for your reviewer**:
Resources were not being deleted because resource names were being truncated and then their ability to be deleted was determined by the entire cluster id existing in the name. Truncated names also have an extra '0' append to the end of their name (unknown origin). This PR tries to match on a common prefix. 

Minor changes were made to improve log readability. 

**Testing this PR**:
This was tested by running a master upgrade test and by adding a second forwarding-rule mid-run.  This forwarding rule referenced the same url-map used by the first forwarding-rule created by the GLBC. Therefore, the GLBC will be able to delete the forwarding-rule but not anymore L7 resources. This second forwarding rule's name was nearly identical to the first forwarding rule so that the cleanup code will find it. 

As you can see from the test run below, the cleanup code deleted all the resources that the GLBC could not.

```log
...
Mar  5 18:35:53.112: INFO: Monitoring glbc's cleanup of gce resources:
k8s-fws-e2e-tests-ingress-upgrsde-0px85-static-ip--5f38ac0e2420 (forwarding rule)
k8s-tps-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420 (target-https-proxy)
k8s-um-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e24260 (url-map)
k8s-be-32331--5f38ac0e2426f796 (backend-service)
k8s-be-32613--5f38ac0e2426f796 (backend-service)
k8s-be-32331--5f38ac0e2426f796 (http-health-check)
k8s-be-32613--5f38ac0e2426f796 (http-health-check)
k8s-ig--5f38ac0e2426f796 (instance-group)
k8s-ssl-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420 (ssl-certificate)

STEP: Performing final delete of any remaining resources
Mar  5 18:35:54.055: INFO: Deleting forwarding-rules: k8s-fws-e2e-tests-ingress-upgrsde-0px85-static-ip--5f38ac0e2420
Mar  5 18:36:06.945: INFO: Deleting target-https-proxies: k8s-tps-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420
Mar  5 18:36:14.301: INFO: Deleting url-map: k8s-um-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e24260
Mar  5 18:36:18.309: INFO: Deleting backed-service: k8s-be-32331--5f38ac0e2426f796
Mar  5 18:36:22.112: INFO: Deleting backed-service: k8s-be-32613--5f38ac0e2426f796
Mar  5 18:36:26.192: INFO: Deleting http-health-check: k8s-be-32331--5f38ac0e2426f796
Mar  5 18:36:29.846: INFO: Deleting http-health-check: k8s-be-32613--5f38ac0e2426f796
Mar  5 18:36:33.722: INFO: Deleting instance-group: k8s-ig--5f38ac0e2426f796
Mar  5 18:36:37.762: INFO: Deleting ssl-certificate: k8s-ssl-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420
STEP: No resources leaked.
Mar  5 18:36:46.441: INFO: Deleting addresses: e2e-tests-ingress-upgrade-0px85-static-ip
Mar  5 18:36:53.902: INFO: L7 controller failed to delete all cloud resources on time. timed out waiting for the condition
...
```
2017-03-06 17:16:17 -08:00
Kubernetes Submit Queue
8e52bec3cd Merge pull request #42598 from kubernetes/revert-41870-test-out-of-oir
Automatic merge from submit-queue (batch tested with PRs 42080, 41653, 42598, 42555)

Revert "Pods pending due to insufficient OIR should get scheduled once sufficient OIR becomes available."

Reverts kubernetes/kubernetes#41870 for stopping bleeding edge: #42597

cc/ @ConnorDoyle @kubernetes/release-team 

Connor if there is a pending pr to fix the issue, please point it out to me. We can close this one, otherwise, I would like to revert the pr first. You can resubmit the fix. Thanks!
2017-03-06 17:16:15 -08:00
Kubernetes Submit Queue
d50a59ec66 Merge pull request #42080 from enisoc/controller-ref-ss
Automatic merge from submit-queue (batch tested with PRs 42080, 41653, 42598, 42555)

StatefulSet: Respect ControllerRef

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

This is part of the completion of the [ControllerRef](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md) proposal. It brings StatefulSet into full compliance with ControllerRef. See the individual commit messages for details.

**Which issue this PR fixes**:

Fixes #36859

**Special notes for your reviewer**:

**Release note**:

```release-note
StatefulSet now respects ControllerRef to avoid fighting over Pods. At the time of upgrade, **you must not have StatefulSets with selectors that overlap** with any other controllers (such as ReplicaSets), or else [ownership of Pods may change](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md#upgrading).
```
cc @erictune @kubernetes/sig-apps-pr-reviews
2017-03-06 17:16:10 -08:00
Anthony Yeh
f020c9ae6c Deployment: Update overlapping e2e test for ControllerRef. 2017-03-06 15:12:07 -08:00
Anthony Yeh
887acb07ea Deployment/util: Filter by ControllerRef.
The list functions in deployment/util are used outside the Deployment
controller itself. Therefore, they don't do actual adoption/orphaning.
However, they still need to avoid listing things that don't belong.
2017-03-06 15:12:06 -08:00
Kubernetes Submit Queue
e82834e4d8 Merge pull request #42405 from jszczepkowski/e2e-upgrade-hpa
Automatic merge from submit-queue (batch tested with PRs 41826, 42405)

Fixed too long name in HPA e2e upgrade test.

Fixed too long name in HPA e2e upgrade test.

```release-note
NONE
```
2017-03-06 15:06:07 -08:00
Kubernetes Submit Queue
d731dc7546 Merge pull request #41826 from bowei/stub-2
Automatic merge from submit-queue (batch tested with PRs 41826, 42405)

Add stubDomains and upstreamNameservers configuration to kube-dns

```release-note
Updates the dnsmasq cache/mux layer to be managed by dnsmasq-nanny.
dnsmasq-nanny manages dnsmasq based on values from the
kube-system:kube-dns configmap:

"stubDomains": {
	"acme.local": ["1.2.3.4"]
},

is a map of domain to list of nameservers for the domain. This is used
to inject private DNS domains into the kube-dns namespace. In the above
example, any DNS requests for *.acme.local will be served by the
nameserver 1.2.3.4.

"upstreamNameservers": ["8.8.8.8", "8.8.4.4"]

is a list of upstreamNameservers to use, overriding the configuration
specified in /etc/resolv.conf.
```
2017-03-06 15:06:04 -08:00
Dawn Chen
60758f3fff Revert "Pods pending due to insufficient OIR should get scheduled once sufficient OIR becomes available." 2017-03-06 14:27:17 -08:00
Michelle Au
f738dfac2d Add default storageclass tests 2017-03-06 13:52:38 -08:00
Kris
a2eac2160e Create "framework" per upgrade test
There were already a few tests just using the default framework
namespace instead of creating a new one. Also there are several
testing libraries that use the default framework's default namespace
as well. It's just easier this way.
2017-03-06 11:32:23 -08:00
Kubernetes Submit Queue
0fad9ce5e2 Merge pull request #41870 from intelsdi-x/test-out-of-oir
Automatic merge from submit-queue (batch tested with PRs 31783, 41988, 42535, 42572, 41870)

Pods pending due to insufficient OIR should get scheduled once sufficient OIR becomes available.

This appears to be a regression since v1.5.0 in scheduler behavior for opaque integer resources, reported in https://github.com/kubernetes/kubernetes/issues/41861.

- [X] Add failing e2e test to trigger the regression
- [x] Restore previous behavior (pods pending due to insufficient OIR get scheduled once sufficient OIR becomes available.)
2017-03-06 11:30:24 -08:00
Anthony Yeh
d8a0017559 StatefulSet: Use synchronous Delete of SS in e2e.
This is needed because we changed the default for SS to
OrphanDependents.
2017-03-06 09:46:04 -08:00
Seth Jennings
ccd87fca3f kubelet: add cgroup manager metrics 2017-03-06 08:53:47 -06:00
Maciej Szulik
6c0cd24865 Drop NewDefultGroupVersionFramework in favor of client automatically handling proper GroupVersions 2017-03-06 12:12:38 +01:00
Maciej Szulik
7cba9d9c92 Issue 37166: remove everything from batch/v2alpha1 that is not new 2017-03-06 12:12:38 +01:00
Nick Sardo
6bba665c81 Cleanup gce resources from ingress upgrade tests 2017-03-05 18:38:45 -08:00
yupengzte
363f321f32 should replace errors.New(fmt.Sprintf(...)) with fmt.Errorf(...)
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-03-06 09:14:48 +08:00
shashidharatd
0fe664c264 auto generated bazel build file 2017-03-06 03:20:13 +05:30
shashidharatd
5f2df1f88f remove unused federation_util.go 2017-03-06 03:20:13 +05:30
Connor Doyle
e402c5d5e5 Added missing OIR e2e test: sched after release. 2017-03-04 09:26:20 -08:00
Kubernetes Submit Queue
52f4d38069 Merge pull request #42370 from janetkuo/ds-e2e-ignore-no-schedule-taint
Automatic merge from submit-queue (batch tested with PRs 42456, 42457, 42414, 42480, 42370)

In DaemonSet e2e test, don't check nodes with NoSchedule taints

Fixes #42345 

For example, master node has a ismaster:NoSchedule taint. We don't expect pods to be created there without toleration. 

cc @marun @lukaszo @kargakis @yujuhong @Random-Liu @davidopp @kubernetes/sig-apps-pr-reviews
2017-03-04 00:17:47 -08:00
Kubernetes Submit Queue
f750721b84 Merge pull request #42367 from kow3ns/ss-flakes
Automatic merge from submit-queue (batch tested with PRs 42443, 38924, 42367, 42391, 42310)

Fix StatefulSet e2e flake

**What this PR does / why we need it**:
Fixes StatefulSet e2e flake by ensuring that the StatefulSet controller has observed the unreadiness of Pods prior to attempting to exercise scale functionality.
**Which issue this PR fixes** 
fixes #41889
```release-note
NONE
```
2017-03-03 18:08:42 -08:00
Jing Xu
880de79376 Return nil when deleting non-exist GCE PD
When gce cloud tries to delete a disk, if the disk could not be found
from the zones, the function should return nil error. This modified behavior is also consistent with AWS
2017-03-03 15:06:39 -08:00
Kenneth Owens
08f95aff0f Fixes e2e flake by ensuring that the StatefulSet observes mutations to
Pods prior mutating the StatefulSet object to trigger sclaing.

Add ObervedVersion check
2017-03-03 11:24:47 -08:00
Kubernetes Submit Queue
a2c7eb2754 Merge pull request #42266 from wojtek-t/fix_secret_tests_in_large_clusters
Automatic merge from submit-queue (batch tested with PRs 41306, 42187, 41666, 42275, 42266)

Bump test timeouts to make secret tests work in large clusters
2017-03-03 10:54:45 -08:00
Clayton Coleman
f3d9ad678a
Handle potential conflicts on service endpoint test deletion
Cleanup should ignore conflicts and notfound errors
2017-03-03 01:29:57 -05:00
Anthony Yeh
bdc4540e92 e2e/framework: Deflake cleanup of RCs in service_util.
The previous Get/Update pattern with no retry on resource version mismatch
would flake with the following error:

"the object has been modified; please apply your changes to the latest
version and try again"
2017-03-02 16:51:14 -08:00
Janet Kuo
7bdf54a30a In DaemonSet e2e test, don't check nodes with NoSchedule taints 2017-03-02 16:04:39 -08:00
Kubernetes Submit Queue
819364004f Merge pull request #42283 from smarterclayton/deployment_describe
Automatic merge from submit-queue

Describers with pod templates should have consistent output

Added a test to verify it.

Fixes #38698
2017-03-02 11:43:04 -08:00
Kubernetes Submit Queue
1d97472361 Merge pull request #41928 from Random-Liu/move-npd-test-to-node-e2e
Automatic merge from submit-queue (batch tested with PRs 41984, 41682, 41924, 41928)

Move node problem detector test into node e2e.

Move current NPD e2e test into node e2e.

In fact, current NPD e2e test is only a functionality test for NPD. It creates test NPD pod, sets test configuration, generates test logs and verifies test result.
It doesn't actually test the NPD really deployed in the cluster.

So it doesn't actually need to run in cluster e2e. Running it in node e2e will:
1) Make it easier to run the test.
2) Make it more light weight to introduce this as a pre/post submit test in NPD repo in the future.

Except this, I'm working on a cluster e2e to run some basic functionality test and benchmark test against the real NPD deployed in the cluster. Will send the PR later.

/cc @dchen1107 @kubernetes/node-problem-detector-reviewers
2017-03-02 10:51:18 -08:00
Clayton Coleman
b78321c67f
Fix test cases with more details 2017-03-02 08:28:54 -05:00
Kubernetes Submit Queue
6969aff027 Merge pull request #42128 from jsafrane/v1-2-combined
Automatic merge from submit-queue (batch tested with PRs 42128, 42064, 42253, 42309, 42322)

Add storage.k8s.io/v1 API

This is combined version of reverted #40088 (first 4 commits) and #41646. The difference is that all controllers and tests use old `storage.k8s.io/v1beta1` API so in theory all tests can pass on GKE.

Release note:
```release-note
StorageClassName attribute has been added to PersistentVolume and PersistentVolumeClaim objects and should be used instead of annotation `volume.beta.kubernetes.io/storage-class`. The beta annotation is still working in this release, however it will be removed in a future release.
```
2017-03-02 05:00:39 -08:00
Jan Safranek
c57b246fba Update e2e tests to use beta provisioning.
GKE has not the new API and can't use PVC.Spec.StorageClassName attribute.
2017-03-02 10:31:47 +01:00
Jan Safranek
9487552e41 Regenerate everything 2017-03-02 10:23:58 +01:00
Jan Safranek
7dfc71d9eb e2e tests: use attributes instead of beta annotations 2017-03-02 10:23:57 +01:00
Jan Safranek
7ae4152712 Move PV/PVC annotations to PV/PVC types.
They aren't part of storage.k8s.io/v1 or v1beta1 API.
Also move associated *GetClass functions.
2017-03-02 10:23:55 +01:00
Kubernetes Submit Queue
d6528596a3 Merge pull request #42048 from Crassirostris/cluster-logging-load-tests-parameters
Automatic merge from submit-queue (batch tested with PRs 41980, 42192, 42223, 41822, 42048)

Adjust parameters of GCL cluster logging load tests

This PR increases the amount of logs produced in load tests to match the number of nodes and provide the predictable load of 100 KB/sec on each node.

Also this PR reduces in half amount of time, given for ingesting logs.
2017-03-02 00:59:23 -08:00
Kubernetes Submit Queue
979219f07b Merge pull request #41822 from Crassirostris/cluster-logging-tests-control-ooms
Automatic merge from submit-queue (batch tested with PRs 41980, 42192, 42223, 41822, 42048)

Take into account number of restarts in cluster logging tests

Before, in cluster logging tests, we only measured e2e number of lines delivered to the backend.

Also, befure https://github.com/kubernetes/kubernetes/pull/41795 was merged, from the k8s perspective, fluentd was always working properly, even if it's crashlooping inside.

Now we can detect whether fluentd is truly working properly, experiencing no, or almost no OOMs duing its operation.
2017-03-02 00:59:21 -08:00
Jerzy Szczepkowski
8e8df48bf8 Fixed too long name in HPA e2e upgrade test.
Fixed too long name in HPA e2e upgrade test.
2017-03-02 09:44:49 +01:00
Jan Safranek
a39bd53509 Explicitly use storage.k8s.io/v1beta1 everywhere.
v1 is not yet awailable on GKE and tests would fail.
2017-03-02 08:56:26 +01:00
Kubernetes Submit Queue
47f63acf23 Merge pull request #41931 from jessfraz/pip
Automatic merge from submit-queue (batch tested with PRs 41931, 39821, 41841, 42197, 42195)

Admission Controller: Add Pod Preset

Based off the proposal in https://github.com/kubernetes/community/pull/254

cc @pmorie @pwittrock 

TODO:
- [ ] tests



**What this PR does / why we need it**: Implements the Pod Injection Policy admission controller

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Added new Api `PodPreset` to enable defining cross-cutting injection of Volumes and Environment into Pods.
```
2017-03-01 20:07:54 -08:00
Kubernetes Submit Queue
effbad9ad0 Merge pull request #42020 from nicksardo/ingress_upgrade
Automatic merge from submit-queue (batch tested with PRs 41644, 42020, 41753, 42206, 42212)

Ingress-glbc upgrade tests

Basically #41676 but with some fixes and added comments.  @bprashanth has been away this week and it's desirable to have this in before code freeze.
2017-03-01 15:30:32 -08:00
Jess Frazelle
fe84363ce2
Add settings API and admission controller
export functions from pkg/api/validation

add settings API

add settings to pkg/registry

add settings api to pkg/master/master.go

add admission control plugin for pod preset

add new admission control plugin to kube-apiserver

add settings to import_known_versions.go

add settings to codegen

add validation tests

add settings to client generation

add protobufs generation for settings api

update linted packages

add settings to testapi

add settings install to clientset

add start of e2e

add pod preset plugin to config-test.sh

Signed-off-by: Jess Frazelle <acidburn@google.com>
2017-03-01 13:04:28 -08:00
Nick Sardo
9dc98f5296 upgrade tests: ingress/glbc 2017-03-01 11:52:55 -08:00
Michail Kargakis
3921a2a2f6 e2e: require minimum completeness in deployment tests 2017-03-01 19:25:12 +01:00
Wojciech Tyczynski
9db6aa50f0 Make secret tests work in large clusters 2017-03-01 17:58:30 +01:00
Kubernetes Submit Queue
ed479163fa Merge pull request #42116 from vishh/gpu-experimental-support
Automatic merge from submit-queue

Extend experimental support to multiple Nvidia GPUs

Extended from #28216

```release-note
`--experimental-nvidia-gpus` flag is **replaced** by `Accelerators` alpha feature gate along with  support for multiple Nvidia GPUs. 
To use GPUs, pass `Accelerators=true` as part of `--feature-gates` flag.
Works only with Docker runtime.
```

1. Automated testing for this PR is not possible since creation of clusters with GPUs isn't supported yet in GCP.
1. To test this PR locally, use the node e2e.
```shell
TEST_ARGS='--feature-gates=DynamicKubeletConfig=true' FOCUS=GPU SKIP="" make test-e2e-node
```

TODO:

- [x] Run manual tests
- [x] Add node e2e
- [x] Add unit tests for GPU manager (< 100% coverage)
- [ ] Add unit tests in kubelet package
2017-03-01 04:52:50 -08:00
Chao Xu
31cb266340 tests 2017-02-28 23:05:41 -08:00
Antoine Pelisse
dba0af3675 Merge pull request #42262 from wojtek-t/fix_etcd_upgrade_test
Remove rubbish file
2017-02-28 14:34:18 -08:00
Jon Cope
6e317762fd Reword poll message to log a more readable message. 2017-02-28 15:54:43 -06:00
Vishnu kannan
318f4e102a adding an e2e for GPUs
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2017-02-28 13:42:08 -08:00
Kubernetes Submit Queue
81d01a84e0 Merge pull request #41944 from jingxu97/Feb/mounter
Automatic merge from submit-queue (batch tested with PRs 35094, 42095, 42059, 42143, 41944)

Use chroot for containerized mounts

This PR is to modify the containerized mounter script to use chroot
instead of rkt fly. This will avoid the problem of possible large number
of mounts caused by rkt containers if they are not cleaned up.
2017-02-28 09:20:21 -08:00
Wojciech Tyczynski
3756c7d0fb Remove rubbish file 2017-02-28 17:50:10 +01:00
Kubernetes Submit Queue
c1f84f3aeb Merge pull request #35094 from chenchun/annotations
Automatic merge from submit-queue

kubectl describe: show annotations

Fixes https://github.com/kubernetes/kubernetes/issues/23380
2017-02-28 08:41:12 -08:00
Kubernetes Submit Queue
0765c2886b Merge pull request #42174 from kargakis/move-e2e-test-out-of-flaky-suite
Automatic merge from submit-queue (batch tested with PRs 40746, 41699, 42108, 42174, 42093)

test: move deployment e2e test out of the flaky suite

Moves the deployment test that was marked as flaky in https://github.com/kubernetes/kubernetes/pull/41257 out of the flaky suite.

Haven't seen this flake for some time now:
https://k8s-testgrid.appspot.com/google-gce#gci-gce-flaky
https://k8s-testgrid.appspot.com/google-gce#gce-flaky

Also https://github.com/kubernetes/kubernetes/pull/41510 is merged.

Closes https://github.com/kubernetes/kubernetes/issues/39785 

@spxtr @janetkuo
2017-02-28 07:51:30 -08:00
Kubernetes Submit Queue
e93358fd6d Merge pull request #41615 from skriss/more-upgrade-tests
Automatic merge from submit-queue (batch tested with PRs 41234, 42186, 41615, 42028, 41788)

Additional upgrade e2e tests

**What this PR does / why we need it**: Add basic upgrade tests for DaemonSet and Job, and add "during upgrade" testing to ConfigMap test. Add a simple harness for testing upgrade tests.

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

**Special notes for your reviewer**: continuation of #41296 @krousey please review, thanks

**Release note**: `NONE`
2017-02-28 00:34:06 -08:00
Kubernetes Submit Queue
5891fa021b Merge pull request #42193 from mml/etcd-upgrade-test
Automatic merge from submit-queue

Change etcd test image to 3.0.17.

Follow-up from #41540
2017-02-27 23:10:45 -08:00
Chun Chen
b605da2522 kubectl describe: show annotations 2017-02-28 13:20:23 +08:00
Kubernetes Submit Queue
9a1f0574a4 Merge pull request #41271 from kow3ns/job-upgrade-test
Automatic merge from submit-queue (batch tested with PRs 41205, 42196, 42068, 41588, 41271)

Implements an upgrade test for Job

**What this PR does / why we need it**:
This PR implements a cluster upgrade test for Job. Some functionality for Job testing has been moved from the e2e package to the framework package to facilitate code reuse between the e2e package and the upgrade package without introducing cyclic dependencies.
We need this PR to help automate the testing of cluster upgrades between versions.
**Release note**
```release-note
NONE
```
2017-02-27 21:09:54 -08:00
Steve Kriss
0ae2797992 added DaemonSet before/after upgrade test 2017-02-27 16:16:22 -08:00
Matt Liggett
f37f7d42ba Change etcd test image to 3.0.17. 2017-02-27 14:23:14 -08:00
Bowei Du
4fe2e82d88 Configure DNS based on the kube-system:kube-dns ConfigMap
Updates the dnsmasq cache/mux layer to be managed by dnsmasq-nanny.
dnsmasq-nanny manages dnsmasq based on values from the
kube-system:kube-dns configmap:

"stubDomains": {
	"acme.local": ["1.2.3.4"]
},

is a map of domain to list of nameservers for the domain. This is used
to inject private DNS domains into the kube-dns namespace. In the above
example, any DNS requests for *.acme.local will be served by the
nameserver 1.2.3.4.

"upstreamNameservers": ["8.8.8.8", "8.8.4.4"]

is a list of upstreamNameservers to use, overriding the configuration
specified in /etc/resolv.conf.
2017-02-27 11:31:59 -08:00
Michail Kargakis
b4a480b6fd test: move deployment e2e test out of the flaky suite 2017-02-27 19:08:59 +01:00
Kenneth Owens
116eda0909 Implements an upgrade test for Job. Job common functionality is refactored into the framework package to allow for code sharing between e2e and upgrade tests. 2017-02-27 09:24:59 -08:00
Andy Goldstein
34a0a78d91 Make kubectl taint e2e serial
Make kubectl taint e2e run [Serial] so it doesn't affect any other
tests.
2017-02-27 11:51:46 -05:00
Kubernetes Submit Queue
bf984aa328 Merge pull request #42120 from kevin-wangzefeng/kubectl-taint-respect-noexecute
Automatic merge from submit-queue (batch tested with PRs 41116, 41804, 42104, 42111, 42120)

make kubectl taint command respect effect NoExecute

**What this PR does / why we need it**:
Part of feature forgiveness implementation, make kubectl taint command respect effect NoExecute.

**Which issue this PR fixes**: 
Related Issue: #1574
Related PR: #39469

**Special notes for your reviewer**:

**Release note**:

```release-note
make kubectl taint command respect effect NoExecute
```
2017-02-27 04:10:30 -08:00
Kubernetes Submit Queue
73c9fd8cec Merge pull request #41116 from lukaszo/ds-updates
Automatic merge from submit-queue (batch tested with PRs 41116, 41804, 42104, 42111, 42120)

DaemonSet updates - take 2

It implements https://github.com/kubernetes/community/blob/master/contributors/design-proposals/daemonset-update.md
Feature kubernetes/features#124

```release-note
Implement the update feature for DaemonSet.
```

cc @kargakis @janetkuo @mikedanese
2017-02-27 04:10:23 -08:00
Kubernetes Submit Queue
37acb8423c Merge pull request #42019 from msau42/pv_upgrade_test
Automatic merge from submit-queue (batch tested with PRs 41962, 42055, 42062, 42019, 42054)

PV upgrade test

**What this PR does / why we need it**:
This PR adds a PV upgrade test to the new upgrade test framework.  Before, this test had to be done manually.  Currently the upgrade test framework only works on the GCE environment, so I plan to add support for other providers later.  In order to write the test, I had to modify and refactor some volume test util libraries.  I reran the impacted tests to make sure they still passed.

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

**Special notes for your reviewer**:
It's probably easier to review the two commits separately.  I split it up into the refactor changes, and the upgrade test changes.

**Release note**:

NONE


cc @saad-ali @krousey
2017-02-27 00:16:58 -08:00
Łukasz Oleś
b27308c317 DaemonSet updates
It implements https://github.com/kubernetes/community/blob/master/contributors/design-proposals/daemonset-update.md
Feature https://github.com/kubernetes/features/issues/124
2017-02-27 09:15:56 +01:00
Kubernetes Submit Queue
25188604fa Merge pull request #42050 from aledbf/ci-kubernetes-e2e-kops-aws-4559
Automatic merge from submit-queue (batch tested with PRs 42044, 41694, 41927, 42050, 41987)

Use existing nginx image in the node

**What this PR does / why we need it**:
 Fixes a test flake: `[k8s.io] Garbage collector should orphan pods created by rc if delete options say so`

**Which issue this PR fixes** 

fixes #35771

**Special notes for your reviewer**:

**Release note**:
```release-note NONE
```
2017-02-26 23:16:54 -08:00
Kubernetes Submit Queue
f1fecc3074 Merge pull request #41964 from sttts/sttts-upgrade-test-sysctl
Automatic merge from submit-queue (batch tested with PRs 35408, 41915, 41992, 41964, 41925)

e2e/upgrade: add sysctls

Add sysctl upgrade tests.

How can these be effectively tested?
2017-02-26 18:07:59 -08:00
Kubernetes Submit Queue
16f87fe7d8 Merge pull request #40952 from dashpole/premption
Automatic merge from submit-queue (batch tested with PRs 41994, 41969, 41997, 40952, 40576)

Guaranteed admission for Critical Pods

This is the first step in implementing node-level preemption for critical pods.
It defines the AdmissionFailureHandler interface, which allows callers, like the kubelet, to define how failed predicates are handled, and take steps to correct failures if necessary.
In the kubelet's implementation, it triggers preemption if the pod being admitted is critical, and if the only failed predicates are InsufficientResourceErrors, then it prempts (not yet implemented) other other pods to allow admission of the critical pod.

cc: @vishh
2017-02-26 12:57:59 -08:00
Mik Vyatskov
321c84bdd5 Take into account number of restarts in cluster logging tests 2017-02-26 20:09:54 +01:00
Kubernetes Submit Queue
80e6492f03 Merge pull request #40932 from peay/cronjob-max-finished-jobs
Automatic merge from submit-queue (batch tested with PRs 40932, 41896, 41815, 41309, 41628)

Modify CronJob API to add job history limits, cleanup jobs in controller

**What this PR does / why we need it**:
As discussed in #34710: this adds two limits to `CronJobSpec`, to limit the number of finished jobs created by a CronJob to keep.

**Which issue this PR fixes**: fixes #34710

**Special notes for your reviewer**:

cc @soltysh, please have a look and let me know what you think -- I'll then add end to end testing and update the doc in a separate commit. What is the timeline to get this into 1.6?

The plan:

- [x] API changes
  - [x] Changing versioned APIs
    - [x] `types.go`
    - [x] `defaults.go` (nothing to do)
    - [x] `conversion.go` (nothing to do?)
    - [x] `conversion_test.go` (nothing to do?)
  - [x] Changing the internal structure
    - [x] `types.go`
    - [x] `validation.go`
    - [x] `validation_test.go`
  - [x] Edit version conversions
    - [x] Edit (nothing to do?)
    - [x] Run `hack/update-codegen.sh`
  - [x] Generate protobuf objects
    - [x] Run `hack/update-generated-protobuf.sh`
  - [x] Generate json (un)marshaling code
    - [x] Run `hack/update-codecgen.sh`
  - [x] Update fuzzer
- [x] Actual logic
- [x] Unit tests
- [x] End to end tests
- [x] Documentation changes and API specs update in separate commit


**Release note**:

```release-note
Add configurable limits to CronJob resource to specify how many successful and failed jobs are preserved.
```
2017-02-26 08:09:54 -08:00
Kevin
f4d3339612 make kubectl respect taint effect NoExecute 2017-02-26 22:41:57 +08:00
Kubernetes Submit Queue
f2c2791e87 Merge pull request #41852 from mml/etcd-upgrade-test
Automatic merge from submit-queue (batch tested with PRs 42106, 42094, 42069, 42098, 41852)

Write etcd_upgrade test.

Part of the fix for #40636
2017-02-26 04:34:02 -08:00
Kubernetes Submit Queue
ece8b674fb Merge pull request #42069 from smarterclayton/fix_pod_timeout
Automatic merge from submit-queue (batch tested with PRs 42106, 42094, 42069, 42098, 41852)

Pod deletion observation is flaking, increase timeout and debug more

We can afford to wait longer than 30 seconds, and we should be printing
more error and output information about the cause of the failure.

Fixes / triages #41902
2017-02-26 04:33:58 -08:00
Jordan Liggitt
41c88e0455
Revert "Merge pull request #40088 from jsafrane/storage-ga-v1"
This reverts commit 5984607cb9, reversing
changes made to 067f92e789.
2017-02-25 22:35:15 -05:00
Jordan Liggitt
ce79526e37
Revert "Merge pull request #42105 from ncdc/use-storage-v1beta1-in-e2e"
This reverts commit 59735fb908, reversing
changes made to 197bd532a2.
2017-02-25 22:34:58 -05:00
Andy Goldstein
0e6ca8e514 Keep using storage v1beta1 until GKE enables it 2017-02-25 14:03:49 -05:00
timchenxiaoyu
34bf0bf1cd kubelet word mistake 2017-02-25 22:15:53 +08:00
Kubernetes Submit Queue
5984607cb9 Merge pull request #40088 from jsafrane/storage-ga-v1
Automatic merge from submit-queue (batch tested with PRs 41854, 41801, 40088, 41590, 41911)

Add storage.k8s.io/v1 API

v1 API is direct copy of v1beta1 API. This v1 API gets installed and exposed in this PR, I tested that kubectl can create both v1beta1 and v1 StorageClass.

~~Rest of Kubernetes (controllers, examples,. tests, ...) still use v1beta1 API, I will update it when this PR gets merged as these changes would get lost among generated code.~~ Most parts use v1 API now, it would not compile / run tests without it.

**Release note**:
```
Kubernetes API storage.k8s.io for storage objects is now fully supported and is available as storage.k8s.io/v1. Beta version of the API storage.k8s.io/v1beta1 is still available in this release, however it will be removed in a future Kubernetes release.

Together with the API endpoint, StorageClass annotation "storageclass.beta.kubernetes.io/is-default-class" is deprecated and  "storageclass.kubernetes.io/is-default-class" should be used instead to mark a default storage class. The beta annotation is still working in this release, however it won't be supported in the next one.
```

@kubernetes/sig-storage-misc
2017-02-25 05:02:55 -08:00
peay
2b33de0684 Modify CronJob API to add job history limits, cleanup jobs in controller 2017-02-25 06:51:54 -05:00
Zihong Zheng
7eb9b81d67 Updates test/e2e/addon_update.go to match addon-manager's new behavior 2017-02-24 16:44:21 -08:00
Clayton Coleman
3f04421d7b
Pod deletion observation is flaking, increase timeout and debug more
We can afford to wait longer than 30 seconds, and we should be printing
more error and output information about the cause of the failure.
2017-02-24 17:03:38 -05:00
Jing Xu
ac22416835 Use chroot for containerized mounts
This PR is to modify the containerized mounter script to use chroot
instead of rkt fly. This will avoid the problem of possible large number
of mounts caused by rkt containers if they are not cleaned up.
2017-02-24 13:46:26 -08:00
Matt Liggett
281a57aeaa Add etcd upgrade test. 2017-02-24 10:40:04 -08:00
Mik Vyatskov
59e228ed3a Adjust parameters of GCL cluster logging load tests 2017-02-24 15:35:00 +01:00
Jan Safranek
fa93f1c411 Update imports 2017-02-24 13:52:16 +01:00
Jan Safranek
cea7a46de1 Regenerate everything 2017-02-24 13:34:18 +01:00
Jan Safranek
3f6caca97a Add storage.k8s.io/v1 2017-02-24 13:34:18 +01:00
gmarek
6637592b1d generated 2017-02-24 09:24:33 +01:00
gmarek
d88af7806c NodeController sets NodeTaints instead of deleting Pods 2017-02-24 09:24:33 +01:00
Michelle Au
84d630c189 Add PV upgrade test 2017-02-23 21:05:12 -08:00
Michelle Au
c522b77505 Enhance and refactor volume test util functions
Fix bash command's execution in MakePod().
Add isPriviledged as a parameter to MakePod().
Move PD utils to pv_util.go

Ran all the tests in pd.go, persistent_volumes.go,
persistent_volumes-disruptive.go.

These changes are needed for the PV upgrade test I am working on.
2017-02-23 21:05:12 -08:00
deads2k
bf30b0c71b add WATCH to list of excluded verbs for latency metrics 2017-02-23 15:47:28 -05:00
Manuel de Brito Fontes
faf4facf42 Use existing nginx image in the node 2017-02-23 15:56:52 -03:00
David Ashpole
c58970e47c critical pods can preempt other pods to be admitted 2017-02-23 10:31:20 -08:00
Kubernetes Submit Queue
e5c2d716d9 Merge pull request #41887 from liggitt/watch-verb
Automatic merge from submit-queue (batch tested with PRs 39855, 41433, 41567, 41887, 41652)

Use watch param instead of deprecated /watch/ prefix

Reopen of https://github.com/kubernetes/kubernetes/pull/41722 after reverted in https://github.com/kubernetes/kubernetes/pull/41774

Required https://github.com/kubernetes/kubernetes/pull/41797 to merge first

cc @deads2k @wojtek-t
2017-02-23 09:36:35 -08:00
Kubernetes Submit Queue
a19a18aecf Merge pull request #41808 from gmarek/random-tests
Automatic merge from submit-queue (batch tested with PRs 41540, 41808, 41710, 41838, 41840)

Add randomized load test
2017-02-23 03:29:32 -08:00
Dr. Stefan Schimanski
ea52f59c8c e2e/upgrade: add sysctls 2017-02-23 10:49:41 +01:00
Wojciech Tyczynski
59cec9c1a6 Merge pull request #41886 from wojtek-t/allow_for_disabling_log_dump
Add ability to disable dumping logs
2017-02-23 08:08:25 +01:00
Kubernetes Submit Queue
ffda545ce9 Merge pull request #41793 from wojtek-t/speedup_density_2
Automatic merge from submit-queue (batch tested with PRs 41797, 41793, 41795, 41807, 41781)

Slightly speedup density test
2017-02-22 22:06:32 -08:00
Kubernetes Submit Queue
4396f19c61 Merge pull request #41482 from ncdc/shared-informers-11-statefulset
Automatic merge from submit-queue (batch tested with PRs 41146, 41486, 41482, 41538, 41784)

Switch statefulset controller to shared informers

Originally part of #40097 

I *think* the controller currently makes a deep copy of a StatefulSet before it mutates it, but I'm not 100% sure. For those who are most familiar with this code, could you please confirm?

@beeps @smarterclayton @ingvagabund @sttts @liggitt @deads2k @kubernetes/sig-apps-pr-reviews @kubernetes/sig-scalability-pr-reviews @timothysc @gmarek @wojtek-t
2017-02-22 21:09:35 -08:00
Kubernetes Submit Queue
9cbaff9e0f Merge pull request #41373 from msau42/e2e-pvutil
Automatic merge from submit-queue (batch tested with PRs 38957, 41819, 41851, 40667, 41373)

Move pvutil.go from e2e package to framework package

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

This PR moves pvutil.go to the e2e/framework package.

I am working on a PV upgrade test, and would like to use some of the wrapper functions in pvutil.go.  However, the upgrade test is in the upgrade package, and not the e2e package, and it cannot import the e2e package because it would create a circular dependency.  So pvutil.go needs to be moved out of e2e in order to break the circular dependency.  This is a refactoring name change, no logic has been modified.

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

**Special notes for your reviewer**:

**Release note**:

NONE
2017-02-22 19:59:37 -08:00
Random-Liu
1c8e127973 Move node problem detector test into node e2e. 2017-02-22 14:35:46 -08:00
Justin Santa Barbara
ac87601f1e Clearer logging from e2e DialFromNode 2017-02-22 12:13:19 -05:00
Avesh Agarwal
b4d3d24eaf Update tests. 2017-02-22 09:27:42 -05:00
Wojciech Tyczynski
0d8a492fbf Add ability to disable dumping logs 2017-02-22 15:26:29 +01:00
Jordan Liggitt
e6dbe5f57e
Pass typed options to dynamic client 2017-02-22 08:53:57 -05:00
Andy Goldstein
f6a186b1e1 Switch statefulset controller to shared informers 2017-02-22 08:53:51 -05:00
Kubernetes Submit Queue
eef16cf141 Merge pull request #41240 from Random-Liu/update-npd-test
Automatic merge from submit-queue (batch tested with PRs 41844, 41803, 39116, 41129, 41240)

NPD: Update NPD test.

For https://github.com/kubernetes/node-problem-detector/issues/58.

Update NPD e2e test based on the new behavior.

Note that before merging this PR, we need to merge all pending PRs in npd, and release the v0.3.0-alpha.1 version of NPD.

/cc @dchen1107 @kubernetes/node-problem-detector-reviewers
2017-02-22 05:48:45 -08:00
Kubernetes Submit Queue
af4513cd3f Merge pull request #41803 from wojtek-t/allowed_not_running_pods
Automatic merge from submit-queue (batch tested with PRs 41844, 41803, 39116, 41129, 41240)

Allow for not-ready pods in large clusters

This is to workaround issues with non-starting pods in large clusters in roughly 1/3rd of runs.
2017-02-22 05:48:38 -08:00
Michail Kargakis
58f6eb34d1 test: fetch updated deployment before finding new and old rss 2017-02-22 00:25:35 +01:00
Kubernetes Submit Queue
7a06e41f93 Merge pull request #41782 from wojtek-t/speedup_dns_autoscaling_test
Automatic merge from submit-queue (batch tested with PRs 41364, 40317, 41326, 41783, 41782)

Speedup dns-autoscaling test in large clusters
2017-02-21 07:45:46 -08:00
Kubernetes Submit Queue
d209b3f316 Merge pull request #41783 from wojtek-t/debug_large_clusters_hanging
Automatic merge from submit-queue (batch tested with PRs 41364, 40317, 41326, 41783, 41782)

Debug what is hapening in large clusters

What I'm seeing in large clusters is:
```
I0219 19:34:29.994]   /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/common/secrets.go:44
I0219 19:34:29.994] ------------------------------
I0219 21:27:11.421] Dumping master and node logs to /workspace/_artifacts
I0219 21:27:11.422] Master SSH not supported for gke
```

i have no idea what is happening during those 2 hours, and would like to understand this.
2017-02-21 07:45:44 -08:00
gmarek
8c67f92bd7 Add randomized load test 2017-02-21 16:31:21 +01:00
Wojciech Tyczynski
3c6a37193a Allow for not-ready pods in large clusters 2017-02-21 15:01:08 +01:00
Kubernetes Submit Queue
9ee2ab799f Merge pull request #41717 from kargakis/add-upgrade-test-logging
Automatic merge from submit-queue

Spew replica sets in any deployment upgrade test failure

Should help identifying whether the new replica set is considered as old after the upgrade (or maybe it's something else too).

For debugging https://github.com/kubernetes/kubernetes/issues/41518
https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gke-latest-upgrade-master/5/

The failure seems suspiciously related to https://github.com/kubernetes/kubernetes/issues/40415 but it may not be related at all too...

@kubernetes/sig-apps-bugs
2017-02-21 05:25:15 -08:00
Kubernetes Submit Queue
e65ac460eb Merge pull request #37237 from jpeeler/implementation-volumeaio
Automatic merge from submit-queue (batch tested with PRs 41709, 41685, 41754, 41759, 37237)

Projected volume plugin

This is a WIP volume driver implementation as noted in the commit for https://github.com/kubernetes/kubernetes/pull/35313.
2017-02-21 04:27:51 -08:00
Wojciech Tyczynski
70e8c9cb89 Slightly speedup density test 2017-02-21 13:26:03 +01:00
Wojciech Tyczynski
29c417629d Speedup dns-autoscaling test in large clusters 2017-02-21 12:20:35 +01:00
Wojciech Tyczynski
eec946d20c Debug what is hapening in large clusters 2017-02-21 11:39:26 +01:00
Wojciech Tyczynski
a21b08d00f Revert "Use watch param instead of deprecated /watch/ prefix" 2017-02-21 08:37:51 +01:00
Kubernetes Submit Queue
dfacc61c5f Merge pull request #41722 from liggitt/watch-prefix
Automatic merge from submit-queue (batch tested with PRs 41421, 41440, 36765, 41722)

Use watch param instead of deprecated /watch/ prefix

Switches clients to use watch param instead of /watch/ prefix

```release-note
Clients now use the `?watch=true` parameter to make watch API calls, instead of the `/watch/` path prefix
```
2017-02-20 10:37:44 -08:00
Jeff Peeler
ec701a65e8 Generated files for projected volume driver 2017-02-20 13:09:41 -05:00
Jeff Peeler
8fb1b71c66 Implements projected volume driver
Proposal: kubernetes/kubernetes#35313
2017-02-20 12:56:04 -05:00
Wojciech Tyczynski
f17765ab72 Speedup density test 2017-02-20 16:06:05 +01:00
Jordan Liggitt
308fdcd13f
Pass typed options to dynamic client 2017-02-19 22:12:55 -05:00
Kubernetes Submit Queue
bd1a222173 Merge pull request #41420 from jbeda/add-public-to-e2e
Automatic merge from submit-queue

Adds kube-public to the whitelist to not be deleted for e2e tests

We added the `kube-public` namespace but didn't add it to a whitelist of namespaces to not delete as part of e2e cleanup.

```release-note
```
2017-02-19 14:38:01 -08:00
Michail Kargakis
7b8f95080c Spew replica sets in any deployment upgrade test failure 2017-02-19 14:35:32 +01:00
Joe Beda
93752947b8
Adds kube-public to the whitelist to not be deleted for e2e tests. 2017-02-18 18:08:12 -08:00
Random-Liu
bb8e2530c5 Update NPD test. 2017-02-17 15:47:34 -08:00
Mik Vyatskov
86c9591ea6 Mark cluster logging tests for Stackdriver flaky 2017-02-17 18:06:44 +01:00
Kubernetes Submit Queue
b7717e74e7 Merge pull request #36198 from Crassirostris/logging-load-test
Automatic merge from submit-queue

Add cluster logging load test for GCL

Changed code around logging tests a little to avoid duplication. Added GCL go library, because command line tool cannot handle required number of logs effectively.

Related to https://github.com/kubernetes/kubernetes/issues/34310

@piosz
2017-02-17 05:52:21 -08:00
Kubernetes Submit Queue
078238a461 Merge pull request #41221 from kow3ns/ss-upgrade-test
Automatic merge from submit-queue (batch tested with PRs 41548, 41221)

StatefulSet Upgrade Test

Adds StatefulSet upgrade tests and moves common functionality into the framework package. This removes the potential for cyclic dependencies while allowing for code reuse.
```release-note
NONE
```
2017-02-17 04:34:35 -08:00
Kubernetes Submit Queue
d15d067c79 Merge pull request #41475 from jszczepkowski/e2e-upgrade-hpa
Automatic merge from submit-queue (batch tested with PRs 41606, 41475)

Added e2e upgrade test for Horizontal Pod Autoscaler.
2017-02-17 03:19:36 -08:00
Mik Vyatskov
c025d771f5 Refactor cluster logging tests and add load tests 2017-02-17 12:02:55 +01:00
Jerzy Szczepkowski
ac4fdf9590 Added e2e upgrade test for Horizontal Pod Autoscaler.
Added e2e upgrade test for Horizontal Pod Autoscaler.
2017-02-17 09:37:19 +01:00
Kubernetes Submit Queue
1aa0606a81 Merge pull request #41163 from janetkuo/deployment-cleanup
Automatic merge from submit-queue (batch tested with PRs 41517, 41494, 41163)

Deployment: filter out old RSes that are deleted or with non-zero replicas before cleanup

Fixes #36379

cc @zmerlynn @yujuhong @kargakis @kubernetes/sig-apps-bugs
2017-02-16 21:16:04 -08:00
Michelle Au
f2887af4f5 Move pv_util.go into framework package so that it can be used in tests
not in the e2e package.
2017-02-16 20:48:06 -08:00
Michelle Au
c2cf3beda0 Move pvutil.go into framework/ folder.
This is the first step in a two step change.  First is to move the file.
 The second step is to change the package and callers.  It needs to be
 two steps in order to correctly transfer commit history.
2017-02-16 18:41:22 -08:00
Janet Kuo
a265186aaa Deployment: filter out old RSes that are deleted or with non-zero replicas before cleanup 2017-02-16 14:48:10 -08:00
Kubernetes Submit Queue
b05e500485 Merge pull request #41550 from kubernetes/revert-40798-fewer_endpoints_in_load_test
Automatic merge from submit-queue (batch tested with PRs 41466, 41456, 41550, 41238, 41416)

Revert "Modify load test to not create too may services/endpoints"

Reverts kubernetes/kubernetes#40798

We seem to be ready to go for it now.
2017-02-16 10:14:07 -08:00
Shyam JVS
2ed7acfbcc Revert "Remove alpha provisioning" 2017-02-16 13:53:55 +01:00
Kubernetes Submit Queue
8ecc256e88 Merge pull request #41014 from gmarek/promote_helpers
Automatic merge from submit-queue

Promote taint helpers from e2e/framework to util/taints

cc @kevin-wangzefeng
2017-02-16 02:43:27 -08:00
Wojciech Tyczynski
e5277864e8 Revert "Modify load test to not create too may services/endpoints" 2017-02-16 11:30:22 +01:00
Kubernetes Submit Queue
8c1313913f Merge pull request #41533 from tonglil/ingress-typos
Automatic merge from submit-queue

Ingress e2e typos

**What this PR does / why we need it**: fix typos in e2e test

**Special notes for your reviewer**: none

**Release note**:
```release-note
NONE
```
2017-02-16 01:52:29 -08:00
Kubernetes Submit Queue
8faa9b5d4e Merge pull request #40000 from jsafrane/storage-ga-remove-alpha
Automatic merge from submit-queue

Remove alpha provisioning

This is the first part of https://github.com/kubernetes/features/issues/36

@kubernetes/sig-storage-misc 

**Release note**:
```release-note
Alpha version of dynamic volume provisioning is removed in this release. Annotation
"volume.alpha.kubernetes.io/storage-class" does not have any special meaning. A default storage class
and  DefaultStorageClass admission plugin can be used to preserve similar behavior of Kubernetes cluster,
see https://kubernetes.io/docs/user-guide/persistent-volumes/#class-1 for details.
```
2017-02-16 01:02:06 -08:00
gmarek
6b20bb790f generated 2017-02-16 09:25:27 +01:00
gmarek
e1e4370ecd Promote taint addition/removal to api/v1/helpers.go 2017-02-16 09:25:27 +01:00
Kubernetes Submit Queue
2a7c50add6 Merge pull request #41311 from gmarek/taints-comments
Automatic merge from submit-queue

Apply davidopps comments to TaintController PR

Fix #41318

cc @timothysc @kevin-wangzefeng
2017-02-15 21:38:09 -08:00
Tony Li
fb3744e98a fix missing package in commented out code 2017-02-15 21:03:20 -08:00
Tony Li
9399a9a0e8 typo 2017-02-15 21:03:08 -08:00
Kubernetes Submit Queue
97212f5b3a Merge pull request #37953 from liggitt/automount
Automatic merge from submit-queue (batch tested with PRs 37137, 41506, 41239, 41511, 37953)

Add field to control service account token automounting

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

* adds an `automountServiceAccountToken *bool` field to `ServiceAccount` and `PodSpec`
* if set in both the service account and pod, the pod wins
* if unset in both the service account and pod, we automount for backwards compatibility

```release-note
An `automountServiceAccountToken *bool` field was added to ServiceAccount and PodSpec objects. If set to `false` on a pod spec, no service account token is automounted in the pod. If set to `false` on a service account, no service account token is automounted for that service account unless explicitly overridden in the pod spec.
```
2017-02-15 20:05:13 -08:00
Kubernetes Submit Queue
b188cb1e8e Merge pull request #41511 from tonglil/typos
Automatic merge from submit-queue (batch tested with PRs 37137, 41506, 41239, 41511, 37953)

Fix typos in e2e

**What this PR does / why we need it**: fix typos in e2e test

**Special notes for your reviewer**: none

**Release note**:

```release-note
NONE
```
2017-02-15 20:05:11 -08:00
Kubernetes Submit Queue
6823803772 Merge pull request #41239 from vmware/e2eTestsUpdate-v2
Automatic merge from submit-queue (batch tested with PRs 37137, 41506, 41239, 41511, 37953)

e2e test for storage class diskformat verification for vsphere cloud provider

**What this PR does / why we need it**:
This PR adds a new e2e test for vsphere cloud provider.
Test is to verify diskformat specified in storage-class is being honored while volume creation.

Steps:

1. Create StorageClass with diskformat set to valid type (supported options are `eagerzeroedthick`, `zeroedthick` and `thin`)
2. Create PVC which uses the StorageClass created in step 1.
3. Wait for PV to be provisioned.
4. Wait for PVC's status to become Bound
5. Create POD using PVC on specific node.
6. Wait for Disk to be attached to the node.
7. Get node VM's devices and find PV's Volume Disk.
8. Get Backing Info of the Volume Disk and obtain Property of `VirtualDiskFlatVer2BackingInfo` - `EagerlyScrub` and `ThinProvisioned`
9. Based on the value of `EagerlyScrub` and `ThinProvisioned`, verify if diskformat is correct.
10. Delete POD and Wait for Volume Disk to be detached from the Node.
11. Delete PVC, PV and Storage Class



**Which issue this PR fixes** *
fixes #

**Special notes for your reviewer**:
Test is executed against v1.6.0-alpha.1
Test is failing on v1.4.8

**Release Note**
```release-note
NONE
```
@kerneltime @BaluDontu @abrarshivani please review this PR
2017-02-15 20:05:09 -08:00
Jordan Liggitt
0d6e877de2
Add automountServiceAccountToken field to PodSpec and ServiceAccount types 2017-02-15 16:04:09 -05:00
Tony Li
fdb861ed86 fix typos 2017-02-15 12:27:35 -08:00
gmarek
bcedf60db6 Empty test starts a single Pod 2017-02-15 18:16:35 +01:00
Kubernetes Submit Queue
f551c571f5 Merge pull request #41049 from copejon/pv-provision-in-unmanaged-zone
Automatic merge from submit-queue (batch tested with PRs 41134, 41410, 40177, 41049, 41313)

PV E2E:  dynamically provisioned volume should not create in unmanaged zone

**What this PR does / why we need it**:
Adds e2e test to that attempts to provision a volume in an unmanaged zone and fails on success.  This is to catch regressions of #31948.


cc @jeffvance 
```release-note
NONE
```
2017-02-15 05:58:21 -08:00
Kubernetes Submit Queue
f2da9d8cba Merge pull request #40177 from copejon/isolate-recycler-test
Automatic merge from submit-queue (batch tested with PRs 41134, 41410, 40177, 41049, 41313)

Isolate recycler behavior in PV E2E

**What this PR does / why we need it**:
Sets the default `reclaimPolicy` for PV E2E to `Retain` and isolates `Recycle` tests to their own context.  The purpose of this is to future proof the PV test suite against the possible deprecation of the `Recycle` behavior.  This is done by consolidating recycling test code into a single Context block that can be removed en masse without affecting the test suite.

Secondly, adds a liveliness check for the NFS server pod prior to each test to avoid maxing out timeouts if the NFS server becomes unavailable.

cc @saad-ali @jeffvance
2017-02-15 05:58:19 -08:00
Kubernetes Submit Queue
beed2ea460 Merge pull request #41252 from kargakis/drop-unnecessary-helper
Automatic merge from submit-queue (batch tested with PRs 41196, 41252, 41300, 39179, 41449)

Remove redundant pod helper
2017-02-15 04:14:12 -08:00
gmarek
de6c9bd535 Apply davidopps comments to TaintController PR 2017-02-15 09:37:26 +01:00
divyenpatel
cdb48fb6a0 adding e2e test for storage class diskformat verification
adding govmomi dep to test/e2e/BUILD
adding golang.org/x/net/context to e2e deps
addressed review comments
addressed 2nd round of review comments

addressed review comments regarding KubeDescribe tagging
2017-02-14 21:08:53 -08:00
Kubernetes Submit Queue
44f345f8ca Merge pull request #41412 from a-robinson/test
Automatic merge from submit-queue (batch tested with PRs 41216, 41362, 41275, 41277, 41412)

Fix statefulset e2e test

...by removing the liveness/readiness probes from the cockroachdb
manifests, as explained in
https://github.com/kubernetes/test-infra/issues/1740#issuecomment-279555187

@kow3ns @spxtr
2017-02-14 15:30:20 -08:00
Jon Cope
40d830d15b Add test to check disk cannot be provisioned in unmanaged zones
test dyn/prov'd PVC cannot provision a volume in an unmanaged zone

use k8s gce api wrappers

gofmt'd; do skip if no unmanaged zones
2017-02-14 15:46:03 -06:00
Jon Cope
429918d73b PV E2E: default reclaimPolicy to Retain, target recycling behavior in single spec
Added nfs-server verification between tests; prototyped recycler test

recycler test in working state, needs clean up/comments

comments added; gets mount path from pod instead of hard code

typos

removed NFS server checker, will be handled in separate PR

catch err; inaccurate comment

gofmt; typo
2017-02-14 15:43:20 -06:00
Kubernetes Submit Queue
7332baf9a3 Merge pull request #39636 from liggitt/proxy-subresource
Automatic merge from submit-queue (batch tested with PRs 41382, 41407, 41409, 41296, 39636)

Update to use proxy subresource consistently

Proxy subresources have been in place since 1.2.0 and improve the ability to put policy in place around proxy access.

This PR updates the last few clients to use proxy subresources rather than the root proxy
2017-02-14 13:04:33 -08:00
Kubernetes Submit Queue
71265b0684 Merge pull request #41296 from skriss/configmap-upgrade-test
Automatic merge from submit-queue (batch tested with PRs 41382, 41407, 41409, 41296, 39636)

implement configmap upgrade test

**What this PR does / why we need it**: Add an automated ConfigMap upgrade test to the e2e upgrade test suite. The test creates a ConfigMap and verifies it can be consumed by pods before/after upgrade. See PR #39953 and #40747 for context.

**Special notes for your reviewer**:
@krousey please review for consistency with new upgrade test interface. I copied heavily from secrets test for this. I will implement similar tests for DaemonSets and Jobs next. Note that I have not run this test locally.

**Release note**:
`NONE`
2017-02-14 13:04:26 -08:00
Alex Robinson
429e070b01 Fix statefulset e2e test
...by removing the liveness/readiness probes from the cockroachdb
manifests, as explained in
github.com/kubernetes/test-infra/issues/1740#issuecomment-279555187
2017-02-14 10:16:32 -05:00
Jerzy Szczepkowski
e6cdf20c5c Revert "fix flaky host cleanup test" 2017-02-14 12:50:42 +01:00
Kubernetes Submit Queue
c13eb9b259 Merge pull request #41257 from spxtr/flaky
Automatic merge from submit-queue (batch tested with PRs 41342, 41257)

Move two flaky e2e tests to the flaky suite.

cc @kargakis @davidopp 

We should have moved these a long time ago.
**Release note**:
```release-note
NONE
```
2017-02-13 23:07:07 -08:00
Kubernetes Submit Queue
bfca2d4d44 Merge pull request #41178 from jeffvance/kubelet-wedge2
Automatic merge from submit-queue (batch tested with PRs 41357, 41178, 41280, 41184, 41278)

fix flaky host cleanup test

**What this PR does / why we need it**:
Fixes 2 flakes in the "HostCleanup tests in e2e/_kubelet.go_
Also does some very minor refactoring.

**Which issue this PR fixes**
This is an improved fix for issue [31272](https://github.com/kubernetes/kubernetes/issues/31272)

**Special notes for your reviewer**:
```release-note
NONE
```
2017-02-13 21:07:07 -08:00
Jordan Liggitt
88a876b1d0
Update to use proxy subresource consistently 2017-02-13 22:05:00 -05:00
Stephen Kriss
5a5a1d148c implement configmap upgrade test 2017-02-13 13:18:36 -08:00
Andrea Cosentino
2df8a224ea Fixes Hazelcast example e2e test 2017-02-13 10:14:29 +01:00
Kenneth Owens
4506744def Adds StatefulSet upgrade tests and moves common functionality into the
framework package. This removes the potential for cyclic dependencies
while allowing for code reuse.
2017-02-10 11:21:22 -08:00
Kubernetes Submit Queue
8fcbd56974 Merge pull request #41213 from wongma7/external-e2e-role
Automatic merge from submit-queue

Add e2e test for external provisioners

this is a retry of https://github.com/kubernetes/kubernetes/pull/39545

This time around:
* take advantage of the system:persistent-volume-provisioner bootstrap cluster role to grant the external provisioner pod serviceaccount permissions
* add storageclass suffix so that the first and third test don't conflict when one creates the storageclass with the same name before the other

also tested more thoroughly myself on gce :)

@jsafrane if you would like to re-review
2017-02-10 10:51:49 -08:00
Joe Finney
d470175386 Move two flaky e2e tests to the flaky suite. 2017-02-10 10:17:24 -08:00
Michail Kargakis
fe137a8123 Remove redundant pod helper 2017-02-10 17:58:59 +01:00
Kubernetes Submit Queue
a7a74b56da Merge pull request #40355 from gmarek/nc-taint-handling
Automatic merge from submit-queue (batch tested with PRs 39418, 41175, 40355, 41114, 32325)

TaintController

```release-note
This PR adds a manager to NodeController that is responsible for removing Pods from Nodes tainted with NoExecute Taints. This feature is beta (as the rest of taints) and enabled by default. It's gated by controller-manager enable-taint-manager flag.
```
2017-02-10 04:50:42 -08:00
Kubernetes Submit Queue
558c37aee3 Merge pull request #41112 from janetkuo/no-watch-until
Automatic merge from submit-queue (batch tested with PRs 41112, 41201, 41058, 40650, 40926)

e2e test flakes: remove some uses of watch.Until in e2e tests

`watch.Until` is somewhat broken and is causing quite a lot of test flakes. See https://github.com/kubernetes/kubernetes/issues/39879#issuecomment-277966375 and https://github.com/kubernetes/kubernetes/issues/31345 for more context.

@wojtek-t @yujuhong @kargakis
2017-02-10 01:40:41 -08:00
Kubernetes Submit Queue
673d061c56 Merge pull request #40838 from kow3ns/ss-fixes
Automatic merge from submit-queue (batch tested with PRs 40796, 40878, 36033, 40838, 41210)

StatefulSet hardening

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

This PR contains the following changes to StatefulSet. Only one change effects the semantics of how the controller operates (This is described in #38418), and this change only brings the controller into conformance with its documented behavior.

1. pcb and pcb controller are removed and their functionality is encapsulated in StatefulPodControlInterface. This class modules the design contoller.PodControlInterface and provides an abstraction to clientset.Interface which is useful for testing purposes.
2. IdentityMappers has been removed to clarify what properties of a Pod are mutated by the controller. All mutations are performed in the UpdateStatefulPod method of the StatefulPodControlInterface.
3. The statefulSetIterator and petQueue classes are removed. These classes sorted Pods by CreationTimestamp. This is brittle and not resilient to clock skew. The current control loop, which implements the same logic, is in stateful_set_control.go. The Pods are now sorted and considered by their ordinal indices, as is outlined in the documentation.
4. StatefulSetController now checks to see if the Pods matching a StatefulSet's Selector also match the Name of the StatefulSet. This will make the controller resilient to overlapping, and will be enhanced by the addition of ControllerRefs.
5. The total lines of production code have been reduced, and the total number of unit tests has been increased. All new code has 100% unit coverage giving the module 83% coverage. Tests for StatefulSetController have been added, but it is not practical to achieve greater coverage in unit testing for this code (the e2e tests for StatefulSet cover these areas).
6. Issue #38418 is fixed in that StaefulSet will ensure that all Pods that are predecessors of another Pod are Running and Ready prior to launching a new Pod. This removes the potential for deadlock when a Pod needs to be rescheduled while its predecessor is hung in Pending or Initializing.
7. All reference to pet have been removed from the code and comments.

**Which issue this PR fixes**
 fixes #38418,#36859
**Special notes for your reviewer**:

**Release note**:

```release-note
Fixes issue #38418 which, under circumstance, could cause StatefulSet to deadlock. 
Mediates issue #36859. StatefulSet only acts on Pods whose identity matches the StatefulSet, providing a partial mediation for overlapping controllers.
```
2017-02-10 00:04:49 -08:00
Jeff Vance
32a07cbedc fix flaky host cleanup test 2017-02-09 17:54:10 -08:00
Kubernetes Submit Queue
6941925cb7 Merge pull request #41167 from mml/funk
Automatic merge from submit-queue (batch tested with PRs 41074, 41147, 40854, 41167, 40045)

Fix some funky funcs.

This is code cleanup.  Fix function declarations and remove stale comment.
2017-02-09 17:41:44 -08:00
Kubernetes Submit Queue
a1b9905c04 Merge pull request #40854 from kargakis/upgrade-test-for-deployments
Automatic merge from submit-queue (batch tested with PRs 41074, 41147, 40854, 41167, 40045)

Upgrade test for deployments

Upgrade test for Deployments. Should prevent issues like https://github.com/kubernetes/kubernetes/issues/40415 in the future.

@krousey @janetkuo @soltysh 

Haven't managed to run it locally... 
```
$ go run hack/e2e.go  --up --test --test_args="--ginkgo.focus=\[Feature:MasterUpgrade\] --upgrade-target=ci/latest --upgrade-image=gci"
2017/02/02 11:43:22 e2e.go:946: Running: ./hack/e2e-internal/e2e-down.sh
2017/02/02 11:43:22 e2e.go:948: Step './hack/e2e-internal/e2e-down.sh' finished in 7.278236ms
2017/02/02 11:43:22 e2e.go:946: Running: ./hack/e2e-internal/e2e-up.sh
2017/02/02 11:43:22 e2e.go:948: Step './hack/e2e-internal/e2e-up.sh' finished in 5.286328ms
2017/02/02 11:43:22 e2e.go:946: Running: ./cluster/kubectl.sh version --match-server-version=false
2017/02/02 11:43:22 e2e.go:948: Step './cluster/kubectl.sh version --match-server-version=false' finished in 213.847259ms
2017/02/02 11:43:22 e2e.go:946: Running: ./hack/e2e-internal/e2e-status.sh
2017/02/02 11:43:22 e2e.go:948: Step './hack/e2e-internal/e2e-status.sh' finished in 103.253183ms
2017/02/02 11:43:22 e2e.go:230: Something went wrong: encountered 2 errors: [exit status 1 exit status 1]
exit status 1
```

@krousey any eta for when the upgrade framework will be integrated in the pr builder?
2017-02-09 17:41:42 -08:00
gmarek
004552f8a4 generated 2017-02-10 02:13:45 +01:00
gmarek
2f0e436677 Taint controller - first commit 2017-02-10 02:13:45 +01:00
Kubernetes Submit Queue
3de8b4ae69 Merge pull request #41089 from stevekuznetsov/skuznets/statefulset-e2e-test
Automatic merge from submit-queue (batch tested with PRs 41145, 38771, 41003, 41089, 40365)

Use privileged containers for statefulset e2e tests

Test containers need to run as spc_t in order to interact with the host
filesystem under /tmp, as the tests for StatefulSet are doing. Docker
will transition the container into this domain when running the container
as privileged.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>

**Release note**:
```release-note
NONE
```

/cc @ncdc @soltysh @pmorie
2017-02-09 13:34:52 -08:00
Kubernetes Submit Queue
641315f859 Merge pull request #41145 from kargakis/cleanup-test-fix
Automatic merge from submit-queue

Do not cleanup already deleted replica sets and add more logging around it

For https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-kops-aws/3569

@ncdc will make the output of the test cleaner
2017-02-09 13:34:24 -08:00
Matthew Wong
97d2c700c9 Add e2e test for external provisioners 2017-02-09 15:25:34 -05:00
Kenneth Owens
4d99b4d825 StatefulSet refactoring and semantics fix
1. pcb and pcb controller are removed and their functionality is
encapsulated in StatefulPodControlInterface.
2. IdentityMappers has been removed to clarify what properties of a Pod are
mutated by the controller. All mutations are performed in the
UpdateStatefulPod method of the StatefulPodControlInterface.
3. The statefulSetIterator and petQueue classes are removed. These classes
sorted Pods by CreationTimestamp. This is brittle and not resilient to
clock skew. The current control loop, which implements the same logic,
is in stateful_set_control.go. The Pods are now sorted and considered by
their ordinal indices, as is outlined in the documentation.
4. StatefulSetController now checks to see if the Pods matching a
StatefulSet's Selector also match the Name of the StatefulSet. This will
make the controller resilient to overlapping, and will be enhanced by
the addition of ControllerRefs.
2017-02-09 08:42:28 -08:00
Michail Kargakis
c5e698531a test: add upgrade test for deployments 2017-02-09 12:04:28 +01:00
Michail Kargakis
ff83eb58eb Add more logs during the cleanup phase of a deployment 2017-02-09 10:31:15 +01:00
Matt Liggett
3e47013814 Fix some funky funcs. 2017-02-08 16:25:57 -08:00
David Ashpole
ab2ce9cd73 lengthen pod deletion timeout to prevent flakes 2017-02-08 13:12:51 -08:00
Janet Kuo
7c89359cc8 Address comments: remove unused resourceVersion in e2e util wait loop; poll pods every 2 seconds 2017-02-08 13:05:11 -08:00
Kubernetes Submit Queue
44980eb55c Merge pull request #40756 from vmware/e2eTestsUpdate
Automatic merge from submit-queue (batch tested with PRs 38796, 40823, 40756, 41083, 41105)

e2e tests for vSphere cloud provider

**What this PR does / why we need it**:
This PR contains changes for existing e2e volume provisioning test cases for running on vsphere cloud provider.

**Following is the summary of changes made in  existing e2e test cases**

**Added test/e2e/persistent_volumes-vsphere.go**
- This test verifies deleting a PVC before the pod does not cause pod deletion to fail on PD detach and deleting the PV before the pod does not cause pod deletion to fail on PD detach.

**test/e2e/volume_provisioning.go**
- This test creates a StorageClass and claim with dynamic provisioning and alpha dynamic provisioning annotations and verifies that required volumes are getting created. Test also verifies that created volume is readable and retaining data.
- Added vsphere as supported cloud provider. Also set pluginName to "kubernetes.io/vsphere-volume" for vsphere cloud provider.

**test/e2e/volumes.go**
- Added test spec for vsphere
-  This test creates requested volume, mount it on the pod, write some random content at /opt/0/index.html and verifies file contents are perfect to make sure we don't see the content from previous test runs.
- This test also passes "1234" as fsGroup to mount volume and verifies fsGroup is set correctly.

**added  test/e2e/vsphere_utils.go** 
- Added function verifyVSphereDiskAttached - Verify the persistent disk attached to the node.
- Added function waitForVSphereDiskToDetach - Wait until vsphere vmdk is deteched from the given node or time out after 5 minutes
- Added getVSpherePersistentVolumeSpec - create vsphere volume spec with given VMDK volume path, Reclaim Policy and labels
- Added getVSpherePersistentVolumeClaimSpec - get vsphere persistent volume spec with given selector labels
- createVSphereVolume - function to create vmdk volume

**Following is the summary of new e2e tests added with this PR**

**test/e2e/vsphere_volume_placement.go**
- contains volume placement tests using node label selector
-  Test Back-to-back pod creation/deletion with the same volume source on the same worker node
- Test Back-to-back pod creation/deletion with the same volume source attach/detach to different worker nodes

**test/e2e/pv_reclaimpolicy.go**
- contains tests for PV/PVC - Reclaiming Policy
- Test verifies persistent volume should be deleted when reclaimPolicy on the PV is set to delete and associated claim is deleted
- Test also verified that persistent volume should be retained when reclaimPolicy on the PV is set to retain and associated claim is deleted 

**test/e2e/pvc_label_selector.go** 
- This is function test for Selector-Label Volume Binding Feature.
- Verify volume with the matching label is bounded with the PVC.

Other changes
Updated  pkg/cloudprovider/providers/vsphere/BUILD  and test/e2e/BUILD 


**Which issue this PR fixes** *
fixes # 41087

**Special notes for your reviewer**:
Updated tests were executed on kubernetes v1.4.8 release on vsphere.
Test steps are provided in comments 


@kerneltime @BaluDontu
2017-02-08 00:49:47 -08:00
Kubernetes Submit Queue
b57dc268d6 Merge pull request #41097 from kargakis/test-update
Automatic merge from submit-queue (batch tested with PRs 41103, 41042, 41097, 40946, 40770)

test: enhance still failing test

https://github.com/kubernetes/kubernetes/issues/39785 has stopped on gce-etcd3, gci-gce but not on gci-gke and kops
https://k8s-testgrid.appspot.com/sq-blocking#gce-etcd3&include-filter-by-regex=%5EOverall%24%7C%5C%5Bk8s%5C.io%5C%5D%5C%20Deployment%5C%20lack%5C%20of%5C%20progress%5C%20should%5C%20be%5C%20reported%5C%20in%5C%20the%5C%20deployment%5C%20status
2017-02-07 22:12:36 -08:00
Janet Kuo
4cef1008f4 Remove some uses of watch.Until in e2e tests 2017-02-07 16:50:49 -08:00
Michail Kargakis
6f44fbde52 test: enhance still failing test 2017-02-07 22:25:01 +01:00
Steve Kuznetsov
a1eedac6cb
Use privileged containers for statefulset e2e tests
Test containers need to run as spc_t in order to interact with the host
filesystem under /tmp, as the tests for StatefulSet are doing. Docker
will transition the container into this domain when running the container
as privileged.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
2017-02-07 14:40:37 -05:00
Kubernetes Submit Queue
d82e51edc5 Merge pull request #40900 from janetkuo/deployment-e2e-pod-running
Automatic merge from submit-queue (batch tested with PRs 40345, 38183, 40236, 40861, 40900)

Remove checks for pods responding in deployment e2e tests

Fixes #39879

Remove it because it caused deployment e2e tests sometimes timed out waiting for pods responding, and pods responding isn't related to deployment controller and is not a prerequisite of deployment e2e tests.

@kargakis
2017-02-07 11:33:46 -08:00
Kubernetes Submit Queue
5034d96bfb Merge pull request #40861 from lucab/to-k8s/bump-test-images
Automatic merge from submit-queue (batch tested with PRs 40345, 38183, 40236, 40861, 40900)

test: bump mounttest and mounttest-users images

This PR bumps two test images to latest versions:
 * mounttest to 0.8
 * mounttest-user to 0.5

It is a followup to https://github.com/kubernetes/kubernetes/pull/40613 and https://github.com/kubernetes/kubernetes/pull/40821.
2017-02-07 11:33:44 -08:00
divyenpatel
7b17f91867 updating existing e2e tests and adding new e2e tests for vsphere cloud provider
addressed review comments

Addressed review comment for pv_reclaimpolicy.go to verify content of the volume

addressed 2nd round of review comments

addressed 3rd round of review comments from jeffvance
2017-02-07 10:36:39 -08:00
Kubernetes Submit Queue
460f44347c Merge pull request #40709 from liggitt/v1-sar
Automatic merge from submit-queue (batch tested with PRs 40971, 41027, 40709, 40903, 39369)

Promote SubjectAccessReview to v1

We have multiple features that depend on this API:

SubjectAccessReview
- [webhook authorization](https://kubernetes.io/docs/admin/authorization/#webhook-mode)
- [kubelet delegated authorization](https://kubernetes.io/docs/admin/kubelet-authentication-authorization/#kubelet-authorization)
- add-on API server delegated authorization

The API has been in use since 1.3 in beta status (v1beta1) with negligible changes:
- Added a status field for reporting errors evaluating access
- A typo was discovered in the SubjectAccessReviewSpec Groups field name

This PR promotes the existing v1beta1 API to v1, with the only change being the typo fix to the groups field. (fixes https://github.com/kubernetes/kubernetes/issues/32709)

Because the API does not persist data (it is a query/response-style API), there are no data migration concerns.

This positions us to promote the features that depend on this API to stable in 1.7

cc @kubernetes/sig-auth-api-reviews @kubernetes/sig-auth-misc

```release-note
The authorization.k8s.io API group was promoted to v1
```
2017-02-06 20:57:15 -08:00
Kubernetes Submit Queue
4db40cbd94 Merge pull request #40971 from kargakis/lack-of-progress-fix
Automatic merge from submit-queue (batch tested with PRs 40971, 41027, 40709, 40903, 39369)

test: bump deployment condition timeout

@fejta @spxtr ptal

Fixes https://github.com/kubernetes/kubernetes/issues/39785
2017-02-06 20:57:12 -08:00
Jordan Liggitt
8706bc9617
install authorization.k8s.io/v1, add tests
Use specific v1beta1 Authorization client

Add client expansions
2017-02-06 18:16:51 -05:00
Janet Kuo
c9ee8b6c4f Decrese #replicas for deployment e2e test 2017-02-06 10:07:33 -08:00
Janet Kuo
ae5a901a8f Remove checks for pods responding in deployment e2e tests
Remove it because it caused deployment e2e tests sometimes timed out
waiting for pods responding, and pods responding isn't related to
deployment controller and is not a prerequisite of deployment e2e tests.
2017-02-06 10:07:19 -08:00
Wojciech Tyczynski
e3c098442d Fix failing density test in 100-node clusters 2017-02-06 12:18:10 +01:00
Michail Kargakis
e8f1d9bac6 test: bump deployment condition timeout 2017-02-05 01:02:04 +01:00
Kubernetes Submit Queue
b1e669cae7 Merge pull request #40879 from copejon/pv-e2e-unique-nfs-vol
Automatic merge from submit-queue (batch tested with PRs 40289, 40877, 40879, 39972, 40942)

PV E2E: provide each spec with a fresh nfs host

**What this PR does / why we need it**:
PersistentVolume e2e currently reuses an NFS host pod created at the start of the suite and accessed by each test.  This is far less favorable than using a fresh volume per test.  Additionally, this guards against the volume host pod or it's kubelet being disrupted, which has led to flakes.

```release-note-none
```
2017-02-04 04:43:07 -08:00
Kubernetes Submit Queue
4810dded39 Merge pull request #40924 from copejon/pv-e2e-add-flaky-tag
Automatic merge from submit-queue (batch tested with PRs 40906, 40924, 40938, 40902, 40911)

Add [Flaky] tag to persistent volumes tests

**What this PR does / why we need it**:
Persistent Volume tests continue to flake in CI.

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

```release-note
NONE
```
2017-02-04 03:49:51 -08:00
Kubernetes Submit Queue
d6a4394b53 Merge pull request #40747 from krousey/upgrades
Automatic merge from submit-queue

Add an upgrade test for secrets.

**What this PR does / why we need it**: This PR adds an upgrade test for secrets. It creates a secret and makes sure that pods can consume it before an after an upgrade.
2017-02-03 23:10:21 -08:00
Kubernetes Submit Queue
9642104e82 Merge pull request #39914 from kevin-wangzefeng/forgiveness-library-changes
Automatic merge from submit-queue (batch tested with PRs 40696, 39914, 40374)

Forgiveness library changes

**What this PR does / why we need it**:
Splited from #34825, contains library changes that are needed to implement forgiveness:

1. ~~make taints-tolerations matching respect timestamps, so that one toleration can just tolerate a taint for only a period of time.~~ As TaintManager is caching taints and observing taint changes, time-based checking is now outside the library (in TaintManager). see #40355.
2. make tolerations respect wildcard key.
3. add/refresh some related functions to wrap taints-tolerations operation.

**Which issue this PR fixes**: 
Related issue: #1574
Related PR: #34825, #39469 
~~Please note that the first 2 commits in this PR come from #39469 .~~

**Special notes for your reviewer**:

~~Since currently we have `pkg/api/helpers.go` and `pkg/api/v1/helpers.go`, there are some duplicated periods of code laying in these two files.~~

~~Ideally we should move taints-tolerations related functions into a separate package (pkg/util/taints), and make it a unified set of implementations. But I'd just suggest to do it in a follow-up PR after Forgiveness ones done, in case of feature Forgiveness getting blocked to long.~~

**Release note**:

```release-note
make tolerations respect wildcard key
```
2017-02-03 15:05:55 -08:00
Jon Cope
d1ab959bf4 Change NFS host pod to recreate per It() 2017-02-03 15:30:37 -06:00
Jon Cope
54072bf530 Add [Flaky] to persistent volumes tests 2017-02-03 12:26:20 -06:00
Dr. Stefan Schimanski
6af3210d6f Update generated files 2017-02-03 08:15:46 +01:00
Dr. Stefan Schimanski
536460e1d9 Mechanical fixup imports: pkg/genericapiserver 2017-02-03 08:15:45 +01:00
Kubernetes Submit Queue
8b795e2396 Merge pull request #38382 from hodovska/init-containers-to-ga
Automatic merge from submit-queue (batch tested with PRs 40864, 40666, 38382, 40874)

Promote init containers to GA

This is proposed for 1.6
PR moves beta proved concept for init containers to stable. Specification of init containers can be now stated under initContainers field in PodSpec/PodTemplateSpec. Specifying init-containers in annotation is still possible, but will be removed in future version.

```release-note
Init containers have graduated to GA and now appear as a field.  The beta annotation value will still be respected and overrides the field value.
```
2017-02-02 21:04:50 -08:00
Kubernetes Submit Queue
1fab123eb9 Merge pull request #40864 from kargakis/lack-of-progress
Automatic merge from submit-queue (batch tested with PRs 40864, 40666, 38382, 40874)

test: reduce deployment progress deadline, ensure its rs is up

Fixes https://github.com/kubernetes/kubernetes/issues/39785 by reducing the deadline of the expected progress and making sure the new replica set is up before checking the deployment condition.

@kubernetes/sig-apps-misc
2017-02-02 21:04:47 -08:00
Kubernetes Submit Queue
612d014a4c Merge pull request #40845 from spxtr/deljobe2e
Automatic merge from submit-queue (batch tested with PRs 40884, 40809, 40845, 40866, 40875)

Remove many job e2e tests.

These tests have equivalent unit test coverage as far as I can tell, in [pkg/controller/job/jobcontroller_test.go](https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/job/jobcontroller_test.go). See #40839 for context.

**Release note**:
```release-note
NONE
```
2017-02-02 18:53:50 -08:00
Michail Kargakis
5e61e5fc7d test: reduce deployment progress deadline, ensure its rs is up 2017-02-03 03:10:09 +01:00
Dominika Hodovska
6c0191b31d Modify e2e test for init containers in stable 2017-02-03 00:25:47 +01:00
Kubernetes Submit Queue
8a8f6ca849 Merge pull request #40525 from lucab/to-k8s/node-e2e-local-cri
Automatic merge from submit-queue (batch tested with PRs 40812, 39903, 40525, 40729)

test/node_e2e: wire-in cri-enabled local testing

This commit wires-in the pre-existing `--container-runtime` flag for
local node_e2e testing.
This is needed in order to further skip docker specific testing
and validation.

Local CRI node_e2e can now be performed via
`make test-e2e-node RUNTIME=remote REMOTE=false`
which will also take care of passing the appropriate argument to
the kubelet.
2017-02-02 13:57:48 -08:00
Kubernetes Submit Queue
737307e828 Merge pull request #40812 from kargakis/move-deployment-utility
Automatic merge from submit-queue

test: move deployment helper in testing framework

Wanted to get this out of the way before submitting an upgrade test for Deployments and I need the helper in the framework utility

@janetkuo @soltysh
2017-02-02 13:22:27 -08:00
Luca Bruno
85b1def175
test: update to use mounttest:0.8 and mounttest-user:0.5 2017-02-02 20:41:18 +00:00
Joe Finney
e26516a900 Remove half of the job e2e tests.
These tests have equivalent unit test coverage.
2017-02-02 10:31:43 -08:00
Kubernetes Submit Queue
bf51185d2a Merge pull request #35831 from copejon/test-detach-on-ns-deletion
Automatic merge from submit-queue (batch tested with PRs 35782, 35831, 39279, 40853, 40867)

Test GCE PD unmounts and detaches when the namespace of the pvc&pod is deleted.

Addition to Persistent Volume E2E testing.  On a GCE cluster, create a pv, pvc, and client pod.  Delete the namespace and check that the disk detaches successfully.
@jeffvance

~~DEPENDENT ON~~ #34353 merged.  No dependencies.
2017-02-02 09:53:48 -08:00
Kubernetes Submit Queue
6685d3c022 Merge pull request #38954 from slaskawi/statefulsets/add_service_level_tests
Automatic merge from submit-queue (batch tested with PRs 39169, 40719, 38954, 40808, 40689)

Add StatefulSets checks at Service level

Hi!

Please let me propose some very small e2e testsuite enhancement. 

This PR removed a `TODO` about checking governing service at unit test level (which is hard) and adds this to e2e testsuite.

Thanks
Sebastian
2017-02-02 02:05:21 -08:00
Kubernetes Submit Queue
0477100f98 Merge pull request #33684 from fraenkel/port_forward_ws
Automatic merge from submit-queue

Add websocket support for port forwarding

#32880

**Release note**:
```release-note
Port forwarding can forward over websockets or SPDY.
```
2017-02-01 23:19:02 -08:00
Michael Fraenkel
f07f5a4cc3 Generated code 2017-02-01 18:03:47 -07:00
Luca Bruno
42bdbe5c82
test/node_e2e: wire-in "container-runtime" for local tests
This commit wires-in the pre-existing `--container-runtime` flag for
local node_e2e testing.
This is needed in order to further skip docker specific testing
and validation.

Local CRI node_e2e can now be performed via
`make test-e2e-node RUNTIME=remote REMOTE=false`
which will also take care of passing the appropriate arguments to
the kubelet.
2017-02-01 20:34:51 +00:00
Kubernetes Submit Queue
e7e7f95048 Merge pull request #39216 from krmayankk/contr-ref
Automatic merge from submit-queue (batch tested with PRs 40124, 39216, 40561, 40595, 40735)

fix comment alignment

fixes https://github.com/kubernetes/kubernetes/issues/39215

cc  @kargakis  @caesarxuchao
2017-02-01 12:32:41 -08:00
Michail Kargakis
83c1ef489e test: move deployment helper in testing framework 2017-02-01 19:47:02 +01:00
Jon Cope
f4e6bc2978 DeleteNS: Add Delete Namespace before PVC & Pod, check PD detach
tweak func name

moved initializeGCETestSpec from It() to BeforeEach(), added cleanup
2017-02-01 12:36:13 -06:00
Jan Safranek
587eb199e0 Remove alpha provisioning 2017-02-01 14:51:54 +01:00
Michael Fraenkel
beb53fb71a Port forward over websockets
- split out port forwarding into its own package

Allow multiple port forwarding ports
- Make it easy to determine which port is tied to which channel
- odd channels are for data
- even channels are for errors

- allow comma separated ports to specify multiple ports

Add  portfowardtester 1.2 to whitelist
2017-02-01 06:32:04 -07:00
Wojciech Tyczynski
5f41ed0e9d Modify load test to not create too may services/endpoints 2017-02-01 13:25:43 +01:00
Sebastian Laskawiec
7c7ca34246 Add StatefulSets checks at Service level 2017-02-01 11:29:40 +01:00
deads2k
8a12000402 move client/record 2017-01-31 19:14:13 -05:00
Kubernetes Submit Queue
47908629a3 Merge pull request #40748 from bprashanth/nginx_version
Automatic merge from submit-queue (batch tested with PRs 40527, 40738, 39366, 40609, 40748)

Bump nginx ingress version to 0.9.0-beta.1
2017-01-31 15:49:46 -08:00
Kubernetes Submit Queue
a17c93627c Merge pull request #40609 from copejon/pv-e2e-remove-flaky
Automatic merge from submit-queue (batch tested with PRs 40527, 40738, 39366, 40609, 40748)

Removed Flaky tag from PV e2e, added [Volume] to disruptive PV e2e

**What this PR does / why we need it**:
Removes `[Flaky]` from PV e2e testing.  Flakes were due to interference from an external test disrupting a cluster node.  The test has been [removed](9f36c032de) and the flakes have [cleared](https://k8s-testgrid.appspot.com/google-gce#gce-flaky).

Secondly, added `[Volume]` tag to PV disruptive tests.

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

**Release note**:
NONE
```release-note
```
2017-01-31 15:49:45 -08:00
Kris
8652a4f471 Add an upgrade test for secrets. 2017-01-31 13:05:36 -08:00
Kubernetes Submit Queue
e40da1eee9 Merge pull request #40732 from sttts/sttts-update-client-go-2
Automatic merge from submit-queue (batch tested with PRs 38772, 38797, 40732, 40740)

Sync client-go – third try

Follow-up of https://github.com/kubernetes/kubernetes/pull/40692 & https://github.com/kubernetes/kubernetes/pull/40699.

Approval and lgtm from https://github.com/kubernetes/kubernetes/pull/40692.
2017-01-31 11:00:49 -08:00
bprashanth
ce4e3c2c3b Bump nginx ingress version to 0.9.0-beta.1 2017-01-31 10:11:40 -08:00
Kubernetes Submit Queue
e0337b1d0c Merge pull request #40530 from jeffvance/e2e-pv-refactor
Automatic merge from submit-queue

refactor pv e2e code to improve readability

**What this PR does / why we need it**:
Moved the helper functions out of _persistent_volumes.go_ to a new file, _pvutil.go_, in order to improve readability and make it easier to add new tests.
Also, all pod delete code now calls the same helper function `deletePodWithWait`.

**Release note**:
```
NONE
```
2017-01-31 09:54:18 -08:00
Kubernetes Submit Queue
de2493e733 Merge pull request #39096 from caesarxuchao/fix-gc-e2e-test
Automatic merge from submit-queue

e2e test should fail if err==timeout

If err==timeout, it means the replicaset (the owner) is not deleted after 30s, which indicates a bug, so the e2e test should fail.
2017-01-31 08:44:35 -08:00
Kevin
36dcb57407 forgiveness library changes 2017-01-31 21:39:17 +08:00
Dr. Stefan Schimanski
a16843108a Update bazel 2017-01-31 13:50:18 +01:00
Dr. Stefan Schimanski
11f0d77dff Fix k8s.io/client-go imports in authorative files before resync 2017-01-31 13:49:38 +01:00
Wojciech Tyczynski
82655fd205 Enable services by default in load test 2017-01-31 11:40:55 +01:00
Mayank Kumar
07964cca10 fix comment alignment 2017-01-30 20:49:16 -08:00
Jeff Vance
7707aac2ea refactor pv code for readability 2017-01-30 18:12:53 -08:00
deads2k
c9a008dff3 move util/intstr to apimachinery 2017-01-30 12:46:59 -05:00
deads2k
2c1c0f3f72 move workqueue to client-go 2017-01-30 09:08:21 -05:00
Dr. Stefan Schimanski
44ea6b3f30 Update generated files 2017-01-29 21:41:45 +01:00
Dr. Stefan Schimanski
bc6fdd925d pkg/api/resource: move to apimachinery 2017-01-29 21:41:44 +01:00
Kubernetes Submit Queue
f83223091f Merge pull request #40319 from jeffvance/e2e-ssh-local
Automatic merge from submit-queue (batch tested with PRs 40584, 40319)

ssh support for local

**What this PR does / why we need it**: adds local deployment support for e2e tests. Useful for non-cloud, simple testing.

**Special notes for your reviewer**: Formerly this pr was part of #38214 

**Release note**:
```
NONE
```
2017-01-27 19:21:41 -08:00
Kubernetes Submit Queue
62c802203b Merge pull request #40330 from janetkuo/kill-failed-daemon-pods
Automatic merge from submit-queue

DaemonSet controller actively kills failed pods (to recreate them)

Ref #36482, @erictune @yujuhong @mikedanese @kargakis @lukaszo @piosz @kubernetes/sig-apps-bugs 

This also helps with DaemonSet update

```release-note
```
2017-01-27 13:47:09 -08:00
Jon Cope
00a1cbd2dc Removed Flaky tag from PV e2e, added [Volume] to disruptive PV e2e 2017-01-27 10:04:36 -06: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
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
Avesh Agarwal
ed8cd82877 Fix e2e "validates that InterPodAntiAffinity is respected if matching 2". 2017-01-26 13:17:10 -05:00
deads2k
2734f8f892 move dynamic and discovery clients 2017-01-26 08:37:06 -05:00
Kubernetes Submit Queue
a2bbb878f6 Merge pull request #38214 from jeffvance/e2e-kubelet-wedge
Automatic merge from submit-queue (batch tested with PRs 39538, 40188, 40357, 38214, 40195)

test for host cleanup in unfavorable pod deletes

addresses issue #31272 with a new e2e test in _kubelet.go_
```release-note
NONE
```
2017-01-25 17:47:15 -08:00
Jeff Vance
975c5536ab ssh support for local 2017-01-25 15:48:16 -08:00
Dr. Stefan Schimanski
a0137e9b28 Update generated files 2017-01-25 19:49:45 +01:00
Dr. Stefan Schimanski
d7eb3b6870 pkg/util: move uuid and strategicpatch into k8s.io/apimachinery 2017-01-25 19:45:09 +01:00
Janet Kuo
a2e1341e01 DaemonSet controller actively kills failed pods (to recreate them) 2017-01-25 10:20:26 -08:00
deads2k
b0b156b381 make tools/cache authoritative 2017-01-25 08:29:45 -05:00
Jeff Vance
2478d9d29f test host cleanup in kubelet 2017-01-24 18:24:13 -08:00
Kubernetes Submit Queue
f9b3e73954 Merge pull request #40340 from smarterclayton/12605
Automatic merge from submit-queue (batch tested with PRs 40215, 40340, 39523)

Retry resource quota lookup until count stabilizes

On contended servers the service account controller can slow down,
leading to the count changing during a run. Wait up to 5s for the count
to stabilize, assuming that updates come at a consistent rate, and are
not held indefinitely.

Upstream of openshift/origin#12605 (we create more secrets and flake more often)
2017-01-24 18:23:59 -08:00
Kubernetes Submit Queue
243dd9e426 Merge pull request #40215 from shashidharatd/federation-e2e
Automatic merge from submit-queue

Fix federation component logging when e2e test case fails

When a federation e2e test case fails, federation component logs (esp. controller-manager) were very useful in debugging the failure cause. Due to recent updates in framework, the logs were not captured. This PR will fix those issues.

cc @kubernetes/sig-federation-misc @nikhiljindal @madhusudancs
2017-01-24 18:18:35 -08:00
Kubernetes Submit Queue
623b4ef618 Merge pull request #40320 from jeffvance/e2e-vol-hardening
Automatic merge from submit-queue (batch tested with PRs 40335, 40320, 40324, 39103, 40315)

add some resillency to the new volume-server func

**What this PR does / why we need it**: server-pod `Create` won't fail the test if the server pod already exists.

**Special notes for your reviewer**: Formerly this pr was part of #38214
2017-01-24 17:30:04 -08:00
Kubernetes Submit Queue
2e4939a688 Merge pull request #40335 from zmerlynn/b.gcr.io
Automatic merge from submit-queue

Move b.gcr.io/k8s_authenticated_test to gcr.io/k8s-authenticated-test

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

Per https://cloud.google.com/container-registry/docs/support/deprecation-notices, b.gcr.io access will be deprecated soon.

I've already mirrored the repo to the location specified in this PR.
2017-01-24 17:18:11 -08:00
Kubernetes Submit Queue
2229b1cf13 Merge pull request #40325 from krousey/upgrades
Automatic merge from submit-queue (batch tested with PRs 39260, 40216, 40213, 40325, 40333)

Adding framework to allow multiple upgrade tests

**What this PR does / why we need it**: This adds a framework for multiple tests to run during an upgrade. This also moves the existing services test to that framework.
2017-01-24 16:26:04 -08:00
Clayton Coleman
8a303b9908
Retry resource quota lookup until count stabilizes
On contended servers the service account controller can slow down,
leading to the count changing during a run. Wait up to 5s for the count
to stabilize, assuming that updates come at a consistent rate, and are
not held indefinitely.
2017-01-24 17:52:50 -05:00
shashidharatd
e46169f527 Expose options field in e2e framework structure 2017-01-25 01:39:33 +05:30
Clayton Coleman
be6d2933df
refactor: Move *Options references to metav1 2017-01-24 13:41:51 -05:00
deads2k
5a8f075197 move authoritative client-go utils out of pkg 2017-01-24 08:59:18 -05:00
Kubernetes Submit Queue
43286a82c6 Merge pull request #39981 from fraenkel/optional_configmaps_secrets
Automatic merge from submit-queue

Optional configmaps and secrets

Allow configmaps and secrets for environment variables and volume sources to be optional

Implements approved proposal c9f881b7bb

Release note:
```release-note
Volumes and environment variables populated from ConfigMap and Secret objects can now tolerate the named source object or specific keys being missing, by adding `optional: true` to the volume or environment variable source specifications.
```
2017-01-23 23:06:35 -08:00
Michael Fraenkel
4e466040d9 Allow Optional ConfigMap and Secrets
- ConfigMaps and Secrets for Env or Volumes are allowed to be optional
2017-01-23 18:59:49 -07:00
Zach Loafman
3b90066dd6 Move b.gcr.io/k8s_authenticated_test to gcr.io/k8s-authenticated-test
Per
https://cloud.google.com/container-registry/docs/support/deprecation-notices,
b.gcr.io access will be deprecated soon.
2017-01-23 16:58:41 -08:00
Clayton Coleman
c60809aead
Test changes due to client-go staging changes 2017-01-23 17:52:47 -05:00
Clayton Coleman
469df12038
refactor: move ListOptions references to metav1 2017-01-23 17:52:46 -05:00
Kris
18e7a958d2 Adding framework to allow multiple upgrade tests
This adds a framework for multiple tests to run during an
upgrade. This also moves the existing services test to that framework.
2017-01-23 14:47:47 -08:00
Jeff Vance
fd59300a3b add some resillency to the new volume-server func 2017-01-23 12:22:57 -08:00
deads2k
335ef747d6 mechanical 2017-01-23 10:03:55 -05:00
deads2k
ee6752ef20 find and replace 2017-01-20 08:04:53 -05:00
deads2k
c587b8a21e re-run client-gen 2017-01-20 08:02:36 -05:00
Michael Fraenkel
13d693d220 Secrets can populate environment variables 2017-01-19 13:46:05 -05:00
Kubernetes Submit Queue
e9d4e4341c Merge pull request #40087 from deads2k/generic-24-move-fields
Automatic merge from submit-queue

move pkg/fields to apimachinery

Purely mechanical move of `pkg/fields` to apimachinery.  

Discussed with @lavalamp on slack.  Moving this an `labels` to apimachinery.

@liggitt any concerns?  I think the idea of field selection should become generic and this ends up shared between client and server, so this is a more logical location.
2017-01-19 08:48:17 -08:00
Kubernetes Submit Queue
05c2a0825e Merge pull request #38871 from k82cn/k8s_25318
Automatic merge from submit-queue

Made multi-scheduler graduated to Beta and then v1.

fixes #25318
2017-01-19 07:58:51 -08:00
deads2k
11e8068d3f move pkg/fields to apimachinery 2017-01-19 09:50:16 -05:00
Kubernetes Submit Queue
ac857a5ade Merge pull request #40106 from deads2k/client-09-switch
Automatic merge from submit-queue

make client-go more authoritative

Builds on https://github.com/kubernetes/kubernetes/pull/40103

This moves a few more support package to client-go for origination.  
 1. restclient/watch - nodep
 1. util/flowcontrol - used interface
 1. util/integer, util/clock - used in controllers and in support of util/flowcontrol
2017-01-19 06:34:49 -08:00
deads2k
c47717134b move utils used in restclient to client-go 2017-01-19 07:55:14 -05:00
deads2k
cdb2934bbc remove kubernetes copy of clientcmd types 2017-01-19 07:39:19 -05:00
Klaus Ma
c8c4b81963 Made multi-scheduler graduated to Beta and then v1. 2017-01-19 20:16:01 +08:00
Dr. Stefan Schimanski
3d9449a353 genericapiserver: fix imports 2017-01-19 13:06:47 +01:00
shashidharatd
85c3f0d6a0 auto-generated bazel BUILD file changes 2017-01-19 08:00:52 +05:30
shashidharatd
d515eb4c9a segrageted federation related test code from e2e.framework 2017-01-19 07:56:30 +05:30
shashidharatd
79ce4cb67d Move some common functions in e2e to e2e.framework for reusability 2017-01-19 07:56:30 +05:30
shashidharatd
62c92678b6 Move all federation e2e testacases to independent package 2017-01-19 07:56:30 +05:30
Kubernetes Submit Queue
302d3ab1d7 Merge pull request #39625 from deads2k/rbac-36-beta
Automatic merge from submit-queue (batch tested with PRs 39625, 39842)

Add RBAC v1beta1

Add `rbac.authorization.k8s.io/v1beta1`.  This scrubs `v1alpha1` to remove cruft, then add `v1beta1`.  We'll update other bits of infrastructure to code to `v1beta1` as a separate step.

```release-note
The `attributeRestrictions` field has been removed from the PolicyRule type in the rbac.authorization.k8s.io/v1alpha1 API. The field was not used by the RBAC authorizer.
```

@kubernetes/sig-auth-misc @liggitt @erictune
2017-01-18 10:19:11 -08:00
deads2k
d1fec7068f generated 2017-01-18 10:35:46 -05:00
deads2k
e74efe41a0 add rbac v1beta1 2017-01-18 09:49:33 -05:00
deads2k
4f915039e4 move pkg/client/transport to client-go 2017-01-18 07:56:01 -05:00
Clayton Coleman
9a2a50cda7
refactor: use metav1.ObjectMeta in other types 2017-01-17 16:17:19 -05:00
Clayton Coleman
36acd90aba
Move APIs and core code to use metav1.ObjectMeta 2017-01-17 16:17:18 -05:00
Clayton Coleman
54d8ed001d
Move ObjectMeta to metav1 2017-01-17 16:17:13 -05:00
Kubernetes Submit Queue
c0a1fa73f5 Merge pull request #39939 from resouer/statefulset
Automatic merge from submit-queue (batch tested with PRs 34763, 38706, 39939, 40020)

Use Statefulset instead in e2e and controller

Quick fix ref: #35534

We should finish the issue to meet v1.6 milestone.
2017-01-17 09:14:51 -08:00
deads2k
26c46971f2 move PatchType to apimachinery 2017-01-17 08:32:05 -05:00
Harry Zhang
a88cbdc52d Update bazel 2017-01-17 16:55:06 +08:00
Dr. Stefan Schimanski
bf307d9948 genericapiserver: cut off pkg/serviceaccount dependency 2017-01-17 09:36:10 +01:00
Harry Zhang
b8678ad130 Use statefulset instead in controller
Rename e2e folder to statefulset
2017-01-17 10:36:37 +08:00
Harry Zhang
4e3444fcde Use statefulset to replace petset 2017-01-17 10:36:37 +08:00
deads2k
8686d67c80 move pkg/util/rand 2017-01-16 16:04:03 -05:00
Kubernetes Submit Queue
6defc30337 Merge pull request #39882 from deads2k/api-59-errors
Automatic merge from submit-queue (batch tested with PRs 38592, 39949, 39946, 39882)

move api/errors to apimachinery

`pkg/api/errors` is a set of helpers around `meta/v1.Status` that help to create and interpret various apiserver errors.  Things like `.NewNotFound` and `IsNotFound` pairings.  This pull moves it into apimachinery for use by the clients and servers.

@smarterclayton @lavalamp First commit is the move plus minor fitting.  Second commit is straight replace and generation.
2017-01-16 10:37:42 -08:00
Kubernetes Submit Queue
4811ad0231 Merge pull request #38592 from krousey/client-context
Automatic merge from submit-queue (batch tested with PRs 38592, 39949, 39946, 39882)

Add optional per-request context to restclient

**What this PR does / why we need it**: It adds per-request contexts to restclient's API, and uses them to add timeouts to all proxy calls in the e2e tests. An entire e2e shouldn't hang for hours on a single API call.

**Which issue this PR fixes**: #38305

**Special notes for your reviewer**:

This adds a feature to the low-level rest client request feature that is entirely optional. It doesn't affect any requests that don't use it. The api of the generated clients does not change, and they currently don't take advantage of this.

I intend to patch this in to 1.5 as a mostly test only change since it's not going to affect any controller, generated client, or user of the generated client.


cc @kubernetes/sig-api-machinery 
cc @saad-ali
2017-01-16 10:37:38 -08:00
deads2k
77b4d55982 mechanical 2017-01-16 09:35:12 -05:00
Kubernetes Submit Queue
8fa23586cf Merge pull request #39918 from liggitt/e2e-examples-permissions
Automatic merge from submit-queue

Fix examples e2e permission check

Ref #39382
Follow-up from #39896

Permission check should be done within the e2e test namespace, not cluster-wide

Also improved RBAC audit logging to make the scope of the permission check clearer
2017-01-16 06:30:29 -08:00
Kubernetes Submit Queue
2652252223 Merge pull request #39867 from Crassirostris/gcl-logging-on-gke
Automatic merge from submit-queue

Include gcl logging test in gke suite
2017-01-14 16:22:14 -08:00
Jordan Liggitt
07e52481e9
Fix examples e2e permission check 2017-01-14 17:22:45 -05:00
Kubernetes Submit Queue
d416e60538 Merge pull request #39609 from jsafrane/remove-test-sleep
Automatic merge from submit-queue

Remove sleep from DynamicProvisioner test.

The comment says that the sleep is there because of 10 minute PV controller
sync. The controller sync is now 15 seconds and it should be quick enough
to hide this in subsequent `WaitForPersistentVolumeDeleted(.. , 20*time.Minute)`
2017-01-13 21:04:51 -08:00
Kubernetes Submit Queue
df4e8053cc Merge pull request #39896 from liggitt/examples-permissions
Automatic merge from submit-queue (batch tested with PRs 38427, 39896, 39889, 39871, 39895)

Grant permissions to e2e examples test service account

ref #39382
2017-01-13 20:21:36 -08:00
Kubernetes Submit Queue
a9f5065833 Merge pull request #39794 from kargakis/updated-unit-tests
Automatic merge from submit-queue

Updated unit tests

@janetkuo updated the flaky unit test to have the same structure with regard to uncasting as the rest of the tests. ptal
2017-01-13 18:39:55 -08:00
Jordan Liggitt
9ac2f3a43d
Grant permissions to e2e examples test service account 2017-01-13 17:45:47 -05:00
Kubernetes Submit Queue
6b5d82b512 Merge pull request #37505 from k82cn/use_controller_inf
Automatic merge from submit-queue (batch tested with PRs 39807, 37505, 39844, 39525, 39109)

Made cache.Controller to be interface.

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

#37504
2017-01-13 13:40:41 -08:00
Kubernetes Submit Queue
212234ab3f Merge pull request #39807 from deads2k/client-02-client-go
Automatic merge from submit-queue

run staging client-go update

Chasing to see what real problems we have in staging-client-go.

@sttts you get similar results?
2017-01-13 13:21:19 -08:00
Kubernetes Submit Queue
a6fa5c2bfd Merge pull request #39814 from deads2k/api-58-multi-register
Automatic merge from submit-queue

replace global registry in apimachinery with global registry in k8s.io/kubernetes

We'd like to remove all globals, but our immediate problem is that a shared registry between k8s.io/kubernetes and k8s.io/client-go doesn't work.  Since client-go makes a copy, we can actually keep a global registry with other globals in pkg/api for now.

@kubernetes/sig-api-machinery-misc @lavalamp @smarterclayton @sttts
2017-01-13 12:37:02 -08:00
deads2k
633e9d98fc use apimachinery packages instead of client-go packages 2017-01-13 14:04:54 -05:00
Mik Vyatskov
00aea09b0f Include gcl logging test in gke suite 2017-01-13 15:36:32 +01:00
deads2k
f1176d9c5c mechanical repercussions 2017-01-13 08:27:14 -05:00
Michail Kargakis
846bed027c Fix the overlapping e2e test for deployments
Fix the test to correctly expect the older deployment to be marked as
overlapping since that has the newest selector that overlaps.
2017-01-13 10:23:29 +01:00
Klaus Ma
25fe1e0d82 Made cache.Controller to be interface. 2017-01-13 13:33:23 +08:00
Kubernetes Submit Queue
082ce00eca Merge pull request #39478 from rrati/pod-affinity-api-fields
Automatic merge from submit-queue (batch tested with PRs 39803, 39698, 39537, 39478)

[scheduling] Moved pod affinity and anti-affinity from annotations to api fields #25319

Converted pod affinity and anti-affinity from annotations to api fields

Related: #25319
Related: #34508

**Release note**:
```Pod affinity and anti-affinity has moved from annotations to api fields in the pod spec.  Pod affinity or anti-affinity that is defined in the annotations will be ignored.```
2017-01-12 15:06:33 -08:00
Kubernetes Submit Queue
ee49906c45 Merge pull request #39661 from NickrenREN/clientset-redundant-modify
Automatic merge from submit-queue

fix redundant alias clientset

remove redundant alias clientset
2017-01-12 13:29:16 -08:00
Robert Rati
6a3ad93d6c [scheduling] Moved pod affinity and anti-affinity from annotations to api
fields. #25319
2017-01-12 14:54:29 -05:00
Piotr Szczesniak
32cd882090 Revert "Add e2e test for external pv provisioning" 2017-01-12 15:02:09 +01:00
Kubernetes Submit Queue
199af05cd0 Merge pull request #39739 from jszczepkowski/ha-e2e-tests
Automatic merge from submit-queue (batch tested with PRs 39773, 39739)

Fixed cluster validation in e2e tests for HA master.
2017-01-12 04:38:47 -08:00
Kubernetes Submit Queue
1b6d17da24 Merge pull request #39545 from wongma7/external-e2e
Automatic merge from submit-queue (batch tested with PRs 37557, 39545)

Add e2e test for external pv provisioning

fixes https://github.com/kubernetes/kubernetes/issues/36170
2017-01-12 02:36:46 -08:00
Kubernetes Submit Queue
18768a4498 Merge pull request #39771 from mikedanese/spam
Automatic merge from submit-queue (batch tested with PRs 39171, 39771)

remove BUILD spammy output

leftover from debugging
2017-01-11 19:37:43 -08:00
Kubernetes Submit Queue
a1f54a8842 Merge pull request #39171 from msau42/tag-e2e-storage
Automatic merge from submit-queue

Add [Volume] tag to all the volume-related E2E tests.

**What this PR does / why we need it**:
Tags all the volume/storage related e2e tests to make it easier to run a volume test suite.

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

**Special notes for your reviewer**:
Please let me know if there are tests that should/should not be included.

**Release note**:
NONE
```release-note
```
2017-01-11 19:24:37 -08:00
NickrenREN
a12dea14e0 fix redundant alias clientset 2017-01-12 10:21:05 +08:00
Dawn Chen
3648eaae04 Revert "controller: unit tests for overlapping and recreate deployments" 2017-01-11 17:33:46 -08:00
Kubernetes Submit Queue
4ac5f278c5 Merge pull request #38742 from timstclair/cri-exec-long
Automatic merge from submit-queue

[CRI] Don't include user data in CRI streaming redirect URLs

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

Avoid userdata in the redirect URLs by caching the {Exec,Attach,PortForward}Requests with a unique token. When the redirect URL is created, the token is substituted for the request params. When the streaming server receives the token request, the token is used to fetch the actual request parameters out of the cache.

For additional security, the token is generated using the secure random function, is single use (i.e. the first request with the token consumes it), and has a short expiration time.

/cc @kubernetes/sig-node
2017-01-11 17:16:07 -08:00
Mike Danese
f269e8a710 remove BUILD spammy output 2017-01-11 15:51:14 -08:00
Kubernetes Submit Queue
9eb7060892 Merge pull request #39088 from kargakis/unit-tests-for-the-d-controller
Automatic merge from submit-queue (batch tested with PRs 39483, 39088, 38787)

controller: unit tests for overlapping and recreate deployments

Belated unit tests for https://github.com/kubernetes/kubernetes/pull/38080 and https://github.com/kubernetes/kubernetes/pull/36748.

@kubernetes/sig-apps-misc
2017-01-11 15:35:46 -08:00
Tim St. Clair
c17f3ee367
Don't include user data in CRI streaming redirect URLs 2017-01-11 13:40:43 -08:00
Michelle Au
ed06d9e9a1 Tag e2e/pd.go tests with [Volume] 2017-01-11 11:25:21 -08:00
Michelle Au
c822e3e1e8 Add [Volume] tag to all the volume-related E2E tests. 2017-01-11 11:25:21 -08:00
Kubernetes Submit Queue
76b58efcbf Merge pull request #38396 from intelsdi-x/new_portforwardertester_in_test
Automatic merge from submit-queue (batch tested with PRs 39475, 38666, 39327, 38396, 39613)

e2e tests: new portforwardertester with another three tests for case …

PR include:
- add new e2e test cases for BIND_ADDRESS='0.0.0.0'
- add to portforwardertester.go os.Getenv("BIND_ADDRESS") and if not set, it should be localhost for backward compability with existing tests
- for existing tests pass explicity BIND_ADDRESS='localhost'
- rename existing tests

It was mention in the issue: #32128 

cc @mzylowski @pskrzyns
2017-01-11 09:14:56 -08:00
deads2k
6a4d5cd7cc start the apimachinery repo 2017-01-11 09:09:48 -05:00
Kubernetes Submit Queue
14e322cc82 Merge pull request #39547 from copejon/fix-pv-e2e-flake
Automatic merge from submit-queue (batch tested with PRs 39495, 39547)

Tag persistent volume PersistentVolume E2E [Volume][Serial][Flaky]

**What this PR does / why we need it**:
When run parallel with other tests that use PV(C)s, cross-test binding causes flakes.  Add `[Serial]` tag.
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: f
Partly addresses #39119 
 
**Special notes for your reviewer**:
cc @saad-ali @jsafrane @jeffvance
2017-01-10 23:20:10 -08:00
Kubernetes Submit Queue
3f9f7471af Merge pull request #38989 from sjenning/set-qos-field
Automatic merge from submit-queue (batch tested with PRs 39684, 39577, 38989, 39534, 39702)

Set PodStatus QOSClass field

This PR continues the work for https://github.com/kubernetes/kubernetes/pull/37968

It converts all local usage of the `qos` package class types to the new API level types (first commit) and sets the pod status QOSClass field in the at pod creation time on the API server in `PrepareForCreate` and in the kubelet in the pod status update path (second commit).  This way the pod QOS class is set even if the pod isn't scheduled yet.

Fixes #33255

@ConnorDoyle @derekwaynecarr @vishh
2017-01-10 22:24:13 -08:00
Kubernetes Submit Queue
94cca27385 Merge pull request #36390 from nikhiljindal/cascDelSvc
Automatic merge from submit-queue (batch tested with PRs 38212, 38792, 39641, 36390, 39005)

Updating federated service controller to support cascading deletion

Ref https://github.com/kubernetes/kubernetes/issues/33612

Service controller is special than other federation controllers because it does not use federatedinformer and updater to sync services (it was written before we had those frameworks).
Updating service controller code to instantiate these frameworks and then use deletion helper to perform cascading deletion.
Note that, I havent changed the queuing logic in this PR so we still dont use federated informer to manage the queue. Will do that in the next PR.

cc @kubernetes/sig-federation-misc  @mwielgus @quinton-hoole


```release-note
federation: Adding support for DeleteOptions.OrphanDependents for federated services. Setting it to false while deleting a federated service also deletes the corresponding services from all registered clusters.
```
2017-01-10 19:48:14 -08:00
Kubernetes Submit Queue
ae62c5f047 Merge pull request #38792 from mikedanese/bzl-test
Automatic merge from submit-queue (batch tested with PRs 38212, 38792, 39641, 36390, 39005)

build test binary with bazel

I think... this should work
2017-01-10 19:48:10 -08:00
Kubernetes Submit Queue
234c435827 Merge pull request #39615 from gmarek/density_load_configs
Automatic merge from submit-queue (batch tested with PRs 39695, 37054, 39627, 39546, 39615)

Add configs that run more advanced density and load tests

Wojtek is on vacation this week - @timothysc can you please take a look? It's rather terrible, but I don't have a better idea on how to make parametric tests.

cc @wojtek-t
2017-01-10 18:57:27 -08:00
Seth Jennings
e2402b781b set qos class field in pod status 2017-01-10 16:31:52 -06:00
Dominika Krzyszczyk
32660dcd6b e2e tests: new portforwardertester with another three tests for case 0.0.0.0 and also pack all tests in seperate functions 2017-01-10 19:50:48 +01:00
Jerzy Szczepkowski
c74e664d42 Fixed cluster validation in e2e tests for HA master.
Fixed cluster validation in e2e tests for HA master.
2017-01-10 17:11:37 +01:00
Michail Kargakis
43159a48f3 Fix the overlapping e2e test for deployments
Fix the test to correctly expect the older deployment to be marked as
overlapping since that has the newest selector that overlaps.
2017-01-10 12:57:38 +01:00
nikhiljindal
7bc22d7e65 Deleting federation-util-14.go that is not being used anywhere 2017-01-09 17:43:58 -08:00
nikhiljindal
9efa7f4751 Adding e2e test 2017-01-09 17:08:53 -08:00
Mike Danese
c2b5007f1c build test binary with bazel 2017-01-09 14:39:15 -08:00
Jon Cope
f85ef3b83d Tag persistent volume GCE tests [Serial]
Added [Volume] tag per issue #35542; added [Flaky] to GCE tests until confirmed fixed.  Added [Serial] to NFS to address possible cross test contamination.
2017-01-09 15:31:50 -06:00
Kubernetes Submit Queue
125bf9c164 Merge pull request #38270 from resouer/fix-zone
Automatic merge from submit-queue (batch tested with PRs 39394, 38270, 39473, 39516, 36243)

Fix wrong skipf parameter

**How to reproduce**

When run e2e test, it reports `%!!(MISSING)d(MISSING)`:
```
STEP: Checking for multi-zone cluster.  Zone count = 1
Dec  6 14:16:43.272: INFO: Zone count is %!!(MISSING)d(MISSING), only run for multi-zone clusters, skipping test
[AfterEach] [k8s.io] Multi-AZ Clusters
```

We need to pass a string parameter to `SkipUnlessAtLeast`
2017-01-09 12:05:19 -08:00
Matthew Wong
522b4b3f81 Add expectedSize arg to testDynamicProvisioning 2017-01-09 12:16:33 -05:00
gmarek
2e79abe542 Add configs that run more advanced density and load tests 2017-01-09 15:33:15 +01:00
Jan Safranek
46fb417299 Remove sleep from DynamicProvisioner test.
The comment says that the sleep is there because of 10 minute PV controller
sync. The controller sync is now 15 seconds and it should be quick enough
to hide this in subsequent WaitForPersistentVolumeDeleted(.. , 20*time.Minute)
2017-01-09 10:48:21 +01:00
Matthew Wong
7184977c54 Add e2e test for external pv provisioning 2017-01-06 17:07:34 -05:00
Bowei Du
ba215e2bf2 Result of hack/update-all.sh 2017-01-06 13:08:56 -08:00
Bowei Du
21f84db48f Remove reference to dns code from e2e test
This reference was not necessary and avoids having to vendor dns
back into Kubernetes for now.
2017-01-06 12:57:46 -08:00
Kubernetes Submit Queue
5fc2b3522c Merge pull request #39132 from madhusudancs/fed-newtest-refactor-develop-sh
Automatic merge from submit-queue

[Federation] Recompute registry name and version tag in the federation up script.sh and a bunch of other fixes.
2017-01-06 09:26:08 -08:00
Kubernetes Submit Queue
9ce93ed50a Merge pull request #39496 from stevekuznetsov/skuznets/fix-e2e-container-context
Automatic merge from submit-queue (batch tested with PRs 39493, 39496)

Use privileged containers for host path e2e tests

Test containers need to run as spc_t in order to interact with the host
filesystem under /tmp, as the tests for HostPath are doing. Docker will
transition the container into this domain when running the container as
privileged.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>

Currently, this test fails with AVC denials like:
```
time->Thu Jan  5 10:17:51 2017
type=SYSCALL msg=audit(1483629471.846:6623): arch=c000003e syscall=257 success=no exit=-13 a0=ffffffffffffff9c a1=c820010120 a2=80241 a3=1a4 items=0 ppid=4112 pid=4130 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="mt" exe="/mt" subj=system_u:system_r:svirt_lxc_net_t:s0:c123,c328 key=(null)
type=AVC msg=audit(1483629471.846:6623): avc:  denied  { write } for  pid=4130 comm="mt" name="sub-path" dev="xvda2" ino=118491348 scontext=system_u:system_r:svirt_lxc_net_t:s0:c123,c328 tcontext=system_u:object_r:container_runtime_tmp_t:s0 tclass=dir
```

```release-note
NONE
```

/cc @ncdc @pmorie
2017-01-06 08:44:20 -08:00
Madhusudan.C.S
48f79cf600 Quote a bash variable, fix a typo and add some additional logging. 2017-01-06 19:17:48 +05:30
Harry Zhang
993a99dce9 Fix wrong skipf parameter 2017-01-06 09:45:26 +00:00
Steve Kuznetsov
d60cb81f7f
Use privileged containers for host path e2e tests
Test containers need to run as spc_t in order to interact with the host
filesystem under /tmp, as the tests for HostPath are doing. Docker will
transition the container into this domain when running the container as
privileged.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
2017-01-05 17:24:09 -05:00
Jeff Grafton
20d221f75c Enable auto-generating sources rules 2017-01-05 14:14:13 -08:00
Jeff Grafton
a53c5f2a4f use gazel to autofix formatting 2017-01-05 14:14:12 -08:00
Jordan Liggitt
0902c55c8b
Ensure invalid token returns 401 error 2017-01-04 11:37:05 -05:00
Kubernetes Submit Queue
f143ce01e9 Merge pull request #39204 from peay/cronjob-active-forever
Automatic merge from submit-queue

Remove jobs that do not exist from active list of CronJob

**What this PR does / why we need it**: This PR modifies the controller for CronJob to remove from the active job list any job that does not exist anymore, to avoid staying blocked in active state forever. See #37957.

**Which issue this PR fixes**: fixes #37957 

**Special notes for your reviewer**:

**Release note**:

```
```
2017-01-04 03:16:37 -08:00
Kubernetes Submit Queue
819535b96a Merge pull request #36245 from fraenkel/env_configmap
Automatic merge from submit-queue (batch tested with PRs 38433, 36245)

Allow pods to define multiple environment variables from a whole ConfigMap

Allow environment variables to be populated from ConfigMaps

- ConfigMaps represent an entire set of EnvVars
- EnvVars can override ConfigMaps


fixes #26299
2017-01-03 23:28:09 -08:00
Kubernetes Submit Queue
f95362f953 Merge pull request #39367 from jsafrane/sudo
Automatic merge from submit-queue (batch tested with PRs 39284, 39367)

e2e: Use sudo to start/stop kubelet service

It seems that user 'jenkins' does not have permissions to manage services. sudo is already used to e.g. check iptables in https://github.com/kubernetes/kubernetes/blob/master/test/e2e/service.go#L402

Fixes #37956
2017-01-03 19:20:10 -08:00
Zihong Zheng
e5944f56dc Moves e2e service util functions into service_util.go and cleans up test codes 2017-01-03 15:36:15 -08:00
peay
d8d69d1a36 Remove jobs that do not exist from active list of CronJob 2017-01-03 23:12:50 +00:00
Kubernetes Submit Queue
d6dbd50909 Merge pull request #37093 from simonswine/fix-tolerate-unready-endpoints-pods-terminating
Automatic merge from submit-queue (batch tested with PRs 39092, 39126, 37380, 37093, 39237)

Endpoints with TolerateUnready annotation, should list Pods in state terminating

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

We are using preStop lifecycle hooks to gracefully remove a node from a cluster. This hook is potentially long running and after the preStop hook is fired, the DNS resolution of the soon to be stopped Pod is failing, which causes a failure there.

**Special notes for your reviewer**:

Would be great to backport that to 1.4, 1.3 

**Release note**:

```release-note
Endpoints, that tolerate unready Pods, are now listing Pods in state Terminating as well
```

@bprashanth
2017-01-03 09:45:24 -08:00
Michael Fraenkel
2d803afc98 ConfigMaps populate environment variables 2017-01-03 11:02:15 -05:00
deads2k
3a265d0eec add permissions to kubectl test for rbac 2017-01-03 09:59:13 -05:00
Christian Simon
b44de1ef27 Fix: With TolerateUnready set, endpoints are still listed for a Pod in state terminating
* Otherwise it prevents long running task in a preStop hook to succeed,
that require DNS resolution
2017-01-03 13:00:15 +00:00
Jan Safranek
309311fb3d e2e: Use sudo to start/stop kubelet service
It seems that user 'jenkins' does not have permissions to manage services.
2017-01-03 12:10:46 +01:00
Kubernetes Submit Queue
856c3623b5 Merge pull request #38879 from copejon/test-disruptive-kubelet
Automatic merge from submit-queue

Add Persistent Volume E2E in the context of a disrupted kubelet

This PR adds a test suite for persistent volumes affected by a disrupted kubelet.  Two cases are presented:

1.  A volume mounted via PVC remains accessible after a kubelet restart.
2.  When a pod is deleted while the kubelet is down, the mounted volume is unmounted successfully.
2017-01-02 06:45:52 -08:00
Mike Danese
161c391f44 autogenerated 2016-12-29 13:04:10 -08:00
Kubernetes Submit Queue
99939d360a Merge pull request #39278 from jszczepkowski/ha-e2e-zones
Automatic merge from submit-queue

Added e2e test for HA master that creates multizone workers.
2016-12-29 02:06:45 -08:00
Jerzy Szczepkowski
cdd8ce7b20 Added e2e test for HA master that creates multizone workers.
Added e2e test for HA master that creates multizone workers.
2016-12-29 09:35:01 +01:00
Kubernetes Submit Queue
cc8065f1f1 Merge pull request #39266 from zmerlynn/fix-kubectl-rbac
Automatic merge from submit-queue

Remove system:anonymous check from kubectl test

This verbiage doesn't appear when the cluster is `AlwaysAllow` (and just makes the check more brittle).

Follow-on to #39263, this is the last (consistent) failure on [kops-aws](https://k8s-testgrid.appspot.com/google-aws#kops-aws&sort-by-failures=)
2016-12-28 10:50:30 -08:00
Zach Loafman
4465068462 Remove system:anonymous check from kubectl test
This verbiage doesn't appear when the cluster is AlwaysAllow
2016-12-28 00:31:03 -08:00
Kubernetes Submit Queue
69ddd8eb27 Merge pull request #39247 from wojtek-t/optimize_controller_manager_memory
Automatic merge from submit-queue

Avoid unnecessary memory allocations

Low-hanging fruits in saving memory allocations. During our 5000-node kubemark runs I've see this:

ControllerManager:
- 40.17% k8s.io/kubernetes/pkg/util/system.IsMasterNode
- 19.04% k8s.io/kubernetes/pkg/controller.(*PodControllerRefManager).Classify

Scheduler:
- 42.74% k8s.io/kubernetes/plugin/pkg/scheduler/algrorithm/predicates.(*MaxPDVolumeCountChecker).filterVolumes

This PR is eliminating all of those.
2016-12-28 00:02:59 -08:00
CJ Cullen
345d652598 Tolerate a Forbidden error in e2e RBAC RoleBinding setup. 2016-12-27 20:11:14 -08:00
Wojciech Tyczynski
d1292a7397 Optimize memory allocations in controller manager 2016-12-27 16:11:11 +01:00
Kubernetes Submit Queue
a1265e0864 Merge pull request #37538 from resouer/fix-e2e-respect-id
Automatic merge from submit-queue

CreateNodeSelectorPods should respect parameter

Fix (1): `CreateNodeSelectorPods` should respect parameter `id`.

The existing e2e does not break because it happened use "node-selector" as id, which  is the same as the hard coded value.

Fix (2): The current `CreateNodeSelectorPods` does not use `nodeSelector` parameter, it hard coded a label instead.

The reason current e2e does not influenced because we happened use the same label: https://github.com/kubernetes/kubernetes/blob/master/test/e2e/cluster_size_autoscaling.go#L177

Found these bugs during testing #36238
2016-12-27 04:43:46 -08:00
Kubernetes Submit Queue
af54124f23 Merge pull request #35676 from krmayankk/contr-ref
Automatic merge from submit-queue (batch tested with PRs 39059, 39175, 35676, 38655)

ReplicaSet has onwer ref of the Deployment that created it

**What this PR does / why we need it**:
This enabled garbage collection for ReplicaSets and ensures they are owned by their respective Deployment objects.

fixes https://github.com/kubernetes/kubernetes/issues/33845

This is an initial PR to get feedback. Will update this quickly with unit tests if this seems like in the right direction
2016-12-22 18:50:32 -08:00
Kubernetes Submit Queue
dba16d052c Merge pull request #39006 from fabianofranz/issues_38834
Automatic merge from submit-queue

In-cluster configs must take flag overrides into account

**What this PR does / why we need it**: Some flags must override in-cluster configs if provided to `kubectl` inside a cluster.

**Which issue this PR fixes**: Fixes https://github.com/kubernetes/kubernetes/issues/38834

**Release note**:
```release-note
Fixed a bug where the --server, --token, and --certificate-authority flags were not overriding the related in-cluster configs when provided in a `kubectl` call inside a cluster.
```
2016-12-22 17:42:27 -08:00
Mayank Kumar
777977612b ReplicaSet has owner ref of the Deployment that created it 2016-12-22 16:45:50 -08:00
deads2k
2444e0f270 tolerate missing subjectaccessreview in e2e 2016-12-22 14:03:57 -05:00
Fabiano Franz
bdea92bccd In-cluster configs must take flag overrides into account 2016-12-22 14:22:01 -02:00
deads2k
d9a4cfc09f fix e2e tests which use SAs for permissions 2016-12-21 16:25:32 -05:00
Chao Xu
73b5dbcd9b orphan e2e test should fail if timeout 2016-12-21 11:15:48 -08:00
rkouj
d405d041e3 Add e2e test to detach a pd whose node api object was deleted 2016-12-20 12:23:56 -08:00
Jon Cope
da604ad9fa Made server images paths constant, removed redundant import alias 2016-12-20 14:11:38 -06:00
Jon Cope
30a296be82 camel case constants, tweak function documentation 2016-12-20 14:11:37 -06:00
Jon Cope
a2b7193a09 minor fixes: changed string.Contains to mount | grep, nil pod, pv, pvc in AfterEach, set clientNodeIP in BeforeEach 2016-12-20 14:11:37 -06:00
Jon Cope
7d5305718d Add PV E2E: disruptive environment tests
Tweaked 'delete pod during stopped kubelet' test to check for mount

Refactor start, stop, restart funcs into 1 func
2016-12-20 14:11:37 -06:00
Kubernetes Submit Queue
b3e57253cc Merge pull request #36009 from rkouj/GCE-PD-test
Automatic merge from submit-queue

Add test to detach a pd whose node was deleted

**What this PR does / why we need it**:
A test for the following issue :
If a node with a GCE PD attached is deleted (before the volume is detached), subsequent attempts by the attach/detach controller to detach it should not fail.


**Bonus** :Added additional code to ensure that the pd can still be attached to a different node.
Edit : Removed it as it was making the test much slower.

https://github.com/kubernetes/kubernetes/issues/29358
2016-12-19 20:24:02 -08:00
Kubernetes Submit Queue
db5887aa83 Merge pull request #38891 from krousey/gceimageupgrade
Automatic merge from submit-queue (batch tested with PRs 38426, 38917, 38891, 38935)

Support different image during GCE node upgrade

**What this PR does / why we need it**: It lets GCE upgrade tests upgrade to a GCI node image.

**Which issue this PR fixes**: fixes #37855
2016-12-19 18:18:25 -08:00
Rajat Ramesh Koujalagi
f67b4950c0 Add test to detach a pd whose node was deleted 2016-12-19 14:57:28 -08:00
Kris
3b5bf39cfa Support different image during GCE node upgrade 2016-12-19 13:18:50 -08:00
Kubernetes Submit Queue
ce67a03b81 Merge pull request #38958 from jszczepkowski/ha-validation-fix
Automatic merge from submit-queue (batch tested with PRs 38942, 38958)

Added MULTIZONE flag to e2e remove master script.

Added MULTIZONE flag to e2e remove master script. The script is used by HA tests which set-up multizone cluster.
2016-12-19 08:45:45 -08:00
Kubernetes Submit Queue
a366ca3732 Merge pull request #33837 from jsafrane/e2e-configmap
Automatic merge from submit-queue (batch tested with PRs 34353, 33837, 38878)

Add e2e test for configmap volume

There are two patches:
- refactor e2e volume tests to allow multiple volumes mounted into single pod
- add a test for ConfigMap volume mounted twice to test #28502
2016-12-19 06:42:58 -08:00
Kubernetes Submit Queue
377ad165a1 Merge pull request #34353 from copejon/gce-persistentvolume-testing
Automatic merge from submit-queue (batch tested with PRs 34353, 33837, 38878)

Gce persistentvolume testing

Add E2E PersistentVolume test for a GCE environment.  Tests that deleting a PV or PVC before the referencing pod does not fail on unmount and detach during pod deletion.
cc @jeffvance
2016-12-19 06:42:56 -08:00
Jerzy Szczepkowski
0c669fe6cc Added MULTIZONE flag to e2e remove master script.
Added MULTIZONE flag to e2e remove master script.
The script is used by HA tests which set-up multizone clusters.
2016-12-19 14:37:42 +01:00
Jan Safranek
396e2bc581 Add configmap test 2016-12-19 10:33:38 +01:00
Jan Safranek
2970761cf1 Multiple volumes for e2e tests
Allow mounting of multiple volumes in volume e2e tests.
2016-12-19 10:33:38 +01:00
Kubernetes Submit Queue
6c9a4139f3 Merge pull request #38614 from soltysh/remove_ext_jobs
Automatic merge from submit-queue (batch tested with PRs 37468, 36546, 38713, 38902, 38614)

Remove extensions/v1beta1 Job

Fixes https://github.com/kubernetes/kubernetes/issues/32763. This endpoint was deprecated in 1.5 and was planned to be removed in 1.6. 

**Release note**:
```release-note
Remove extensions/v1beta1 Jobs resource, and job/v1beta1 generator.
```
2016-12-16 18:55:37 -08:00
Kubernetes Submit Queue
ff3d4a55b0 Merge pull request #36546 from MrHohn/e2e-firewall
Automatic merge from submit-queue (batch tested with PRs 37468, 36546, 38713, 38902, 38614)

Adds e2e firewall tests for LoadBalancer service, ingress, and e2e cluster

Fixes #25488 and fixes #31827.

This PR adds e2e firewall test for LoadBalancer type service, ingress and e2e cluster.

Test details for LoadBalancer type service as below:
- Verifies corresponding firewall rule has correct `sourceRanges`, `ports and protocols` and `target tags`.
- Verifies requests can reach all expected instances.
- Verifies requests can not reach instances that are not included.

Overview of the test procedure:
- Creates a LoadBalancer type service.
- Validates the corresponding firewall rule.
- Creates netexec pods as service backends.
- Sends requests from outside of the cluster and examine hitting all instances in range.
- Removes tags from one of the instances in order to get it out of firewall rule's range.
- Sends requests from outside of the cluster and examine not hitting this instance.
- Recovers tags for this instances and verifies its traffic is back.

@bprashanth @bowei @thockin
2016-12-16 18:55:30 -08:00
Maciej Szulik
cdec94523e Remove extensions/v1beta1 Job - generated changes 2016-12-17 00:07:25 +01:00
Maciej Szulik
9f064c57ce Remove extensions/v1beta1 Job 2016-12-17 00:07:24 +01:00
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
9010d27108 Merge pull request #38900 from bprashanth/ing_feat
Automatic merge from submit-queue

Remove a space in ingress e2e title
2016-12-16 14:15:59 -08:00
bprashanth
bfdf1855c7 Remove a space in ingress e2e title 2016-12-16 12:42:18 -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
Jon Cope
e095e1120b Add GCE PD persistent volume test: Check that deleting a PV or PVC prior to deleting the client pod does not cause the pod to fail during its deletion.
Extracted delete operations into functions

wait on pv/pvc bind

removed redundant verification, minor refactors

GCEPD: fixed typo

name verifyDiskAttached to verifyGCEDiskAttached

fix empty log msg

Updated test owners

removed unnecessary api calls

Check for apierr IsNotFound for pod,pv,pvc but ignore result

Disable dynamic provisioning in test PVCs

gofmt'd
2016-12-16 12:07:25 -06: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
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
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
shashidharatd
b58216e333 Stop cleaning federation namespace in e2e tests 2016-12-16 14:21:40 +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
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
Kris
1d8bebeb2f Remove the ReadyReplica version guard 2016-12-15 11:14:38 -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
Michail Kargakis
c87e627b9b Add more logs for the rolling test 2016-12-15 19:55:18 +01:00
Michail Kargakis
7ef3e6f7c9 controller: wait for all pods to be deleted before Recreating 2016-12-15 19:55:18 +01:00
Michail Kargakis
31a5b4218d test: remove deployment events from e2e tests 2016-12-15 19:53:36 +01:00
Jerzy Szczepkowski
ec17af655f E2E test lib: improved logging of not ready nodes.
E2E test lib: improved logging of not ready nodes.
2016-12-15 18:23:18 +01:00
Kubernetes Submit Queue
d8efc779ed Merge pull request #38154 from caesarxuchao/rename-release_1_5
Automatic merge from submit-queue (batch tested with PRs 38154, 38502)

Rename "release_1_5" clientset to just "clientset"

We used to keep multiple releases in the main repo. Now that [client-go](https://github.com/kubernetes/client-go) does the versioning, there is no need to keep releases in the main repo. This PR renames the "release_1_5" clientset to just "clientset", clientset development will be done in this directory.

@kubernetes/sig-api-machinery @deads2k 

```release-note
The main repository does not keep multiple releases of clientsets anymore. Please find previous releases at https://github.com/kubernetes/client-go
```
2016-12-14 14:21:51 -08:00
Kris
128af75b93 Add timeouts to proxy calls in e2e tests 2016-12-14 13:14:44 -08:00
Chao Xu
6709b7ada2 run hack/update-codegen.sh
run hack/verify-gofmt.sh
update bazel
2016-12-14 12:39:49 -08:00
Chao Xu
c81057be2c move federation_release_1_5 to federation_clientset 2016-12-14 12:39:49 -08:00
Chao Xu
03d8820edc rename /release_1_5 to /clientset 2016-12-14 12:39:48 -08:00
Kubernetes Submit Queue
f55fc7a9e3 Merge pull request #38734 from bprashanth/ing_cleanup_timeout
Automatic merge from submit-queue (batch tested with PRs 38689, 38743, 38734, 38430)

Temporarily bump e2e cleanup timeout
2016-12-13 21:25:35 -08:00
bprashanth
f898bc5ecf Temporarily bump e2e cleanup timeout 2016-12-13 15:13:32 -08:00
Kubernetes Submit Queue
a9c5f67509 Merge pull request #38668 from bprashanth/glbc_version
Automatic merge from submit-queue

Bump glbc version, cleanup test

Matches https://github.com/kubernetes/ingress/pull/55
2016-12-13 13:27:01 -08:00
Kubernetes Submit Queue
4505224cd3 Merge pull request #35436 from danwinship/utilversion
Automatic merge from submit-queue

Add a package for handling version numbers (including non-"Semantic" versions)

As noted in #32401, we are using Semantic Version-parsing libraries to parse version numbers that aren't necessarily "Semantic". Although, contrary to what I'd said there, it turns out that this wasn't actually currently a problem for the iptables code, because the regexp used to extract the version number out of the "iptables --version" output only pulled out three components, so given "iptables v1.4.19.1", it would have extracted just "1.4.19". Still, it could be a problem if they later release "1.5" rather than "1.5.0", or if we eventually need to _compare_ against a 4-digit version number.

Also, as noted in #23854, we were also using two different semver libraries in different parts of the code (plus a wrapper around one of them in pkg/version).

This PR adds pkg/util/version, with code to parse and compare both semver and non-semver version strings, and then updates kubernetes to use it everywhere (including getting rid of a bunch of code duplication in kubelet by making utilversion.Version implement the kubecontainer.Version interface directly).

Ironically, this does not actually allow us to get rid of either of the vendored semver libraries, because we still have other dependencies that depend on each of them. (cadvisor uses blang/semver and etcd uses coreos/go-semver)

fixes #32401, #23854
2016-12-13 12:10:38 -08:00
Kubernetes Submit Queue
d13067ed37 Merge pull request #38507 from gmarek/res-gat-kubemark
Automatic merge from submit-queue (batch tested with PRs 38695, 38507)

Fix resource gatherer for kubemark

Not working yet...
2016-12-13 07:30:35 -08:00
gmarek
1b1a4aef6a Fix resource gatherer for kubemark 2016-12-13 14:59:22 +01:00
Kubernetes Submit Queue
380ad617f3 Merge pull request #38461 from gmarek/job
Automatic merge from submit-queue

Add an option to run Job in Density/Load config

cc @timothysc @jeremyeder 

@erictune @soltysh - I run this test and it seems to me that Job has noticeably worse performance than Deployment. I'll create an issue for this, but this PR is for easy repro.
2016-12-13 05:57:18 -08:00
Dan Winship
f369372dad Drop version-parsing from pkg/version
pkg/version is now just version constants, etc, not version parsing
2016-12-13 08:53:19 -05:00
gmarek
c9e78f1cd5 Add an option to run Job in Density/Load config 2016-12-13 13:21:30 +01:00
Kubernetes Submit Queue
b14f57ca7e Merge pull request #38620 from wojtek-t/increase_wait_for_nodes_timeout
Automatic merge from submit-queue (batch tested with PRs 38617, 38620)

Increase timeout for waiting for nodes
2016-12-13 03:46:29 -08:00
Dmitry Shulyak
2e9dd13aee Move recreate evicted test to Basic StatefulSet functionality block
Change-Id: I08af6cc9a1f77213fa0b922c3bc964487169cdca
2016-12-13 13:01:20 +02:00
Kubernetes Submit Queue
99f876bb78 Merge pull request #38609 from wojtek-t/cleanup_annoying_test_logs
Automatic merge from submit-queue

Reduce amount of annoing logs in large clusters
2016-12-13 02:12:07 -08:00
Wojciech Tyczynski
6051870a48 Allow for configuring timeout for waiting for nodes 2016-12-13 09:55:34 +01:00
bprashanth
fc57d76018 Delete static-ip after ingress has cleaned up 2016-12-12 19:06:08 -08:00
Mike Danese
82d9ed770c fix examples/ compilation so that test/ also compiles
fix network-tester cauldron serve_hostnames
2016-12-12 15:14:49 -08:00
Mike Danese
c87de85347 autoupdate BUILD files 2016-12-12 13:30:07 -08:00
bprashanth
ee6e4bd832 Don't check nodeport for nginx ingress 2016-12-12 12:04:51 -08:00
Wojciech Tyczynski
ebdef4d57e Reduce amount of annoing logs in large clusters 2016-12-12 14:43:41 +01:00
Michail Kargakis
0d95d71e65 test: cleanup test logs for deployments 2016-12-12 12:19:51 +01:00
Wojciech Tyczynski
b1da629374 Fix services in load test 2016-12-12 09:40:43 +01:00
Clayton Coleman
c52d510a24
refactor: generated 2016-12-10 18:05:53 -05:00
Clayton Coleman
38127a4e7e
Update disruption test 2016-12-10 18:05:37 -05:00
Clayton Coleman
42d410fdde
Switch to use pkg/apis/meta/v1/unstructured and the new interfaces
Avoid directly accessing an unstructured type if it is not required.
2016-12-10 18:05:28 -05:00
Janet Kuo
0e2b0a6f55 Rename pet to stateful pods in statefulset e2e tests logs 2016-12-09 16:01:13 -08:00
Kubernetes Submit Queue
b72c006eb3 Merge pull request #34554 from derekwaynecarr/quota-storage-class
Automatic merge from submit-queue (batch tested with PRs 37270, 38309, 37568, 34554)

Ability to quota storage by storage class

Adds the ability to quota storage by storage class.
1. `<storage-class>.storageclass.storage.k8s.io/persistentvolumeclaims` - quota the number of claims with a specific storage class
2. `<storage-class>.storageclass.storage.k8s.io/requests.storage` - quota the cumulative request for storage in a particular storage class.

For example:

```
$ cat quota.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
  name: storage-quota
spec:
  hard:
    requests.storage: 100Gi
    persistentvolumeclaims: 100
    gold.storageclass.storage.k8s.io/requests.storage: 50Gi
    gold.storageclass.storage.k8s.io/persistentvolumeclaims: 5
    silver.storageclass.storage.k8s.io/requests.storage: 75Gi
    silver.storageclass.storage.k8s.io/persistentvolumeclaims: 10
    bronze.storageclass.storage.k8s.io.kubernetes.io/requests.storage: 100Gi
    bronze.storageclass.storage.k8s.io/persistentvolumeclaims: 15
$ kubectl create -f quota.yaml
$ cat pvc-bronze.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  generateName: pvc-bronze-
  annotations:
    volume.beta.kubernetes.io/storage-class: "bronze"
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 8Gi
$ kubectl create -f pvc-bronze.yaml
$ kubectl get quota storage-quota -o yaml
apiVersion: v1
kind: ResourceQuota
...
status:
  hard:
    bronze.storageclass.storage.k8s.io/persistentvolumeclaims: "15"
    bronze.storageclass.storage.k8s.io/requests.storage: 100Gi
    gold.storageclass.storage.k8s.io/persistentvolumeclaims: "5"
    gold.storageclass.storage.k8s.io/requests.storage: 50Gi
    persistentvolumeclaims: "100"
    requests.storage: 100Gi
    silver.storageclass.storage.k8s.io/persistentvolumeclaims: "10"
    silver.storageclass.storage.k8s.io/requests.storage: 75Gi
  used:
    bronze.storageclass.storage.k8s.io/persistentvolumeclaims: "1"
    bronze.storageclass.storage.k8s.io/requests.storage: 8Gi
    gold.storageclass.storage.k8s.io/persistentvolumeclaims: "0"
    gold.storageclass.storage.k8s.io/requests.storage: "0"
    persistentvolumeclaims: "1"
    requests.storage: 8Gi
    silver.storageclass.storage.k8s.io/persistentvolumeclaims: "0"
    silver.storageclass.storage.k8s.io/requests.storage: "0"
```
2016-12-09 14:11:21 -08:00
Kubernetes Submit Queue
59cfdfb8db Merge pull request #38463 from jszczepkowski/hpa-e2e-fix5
Automatic merge from submit-queue (batch tested with PRs 37860, 38429, 38451, 36050, 38463)

HPA e2e tests: fixed waiting for service creation.
2016-12-09 13:22:20 -08:00
Derek Carr
459a7a05f1 Ability to quota storage by storage class 2016-12-09 13:26:59 -05:00
Kubernetes Submit Queue
695fbb8fb6 Merge pull request #38284 from Crassirostris/kibana-test-fix-2
Automatic merge from submit-queue

Increase Kibana e2e test timeout

10 minutes is not always enough to start kibana instance, most probably increasing the timeout will fix https://github.com/kubernetes/kubernetes/issues/36809

Follow-up of https://github.com/kubernetes/kubernetes/pull/36192

CC @piosz
2016-12-09 08:49:42 -08:00
Kubernetes Submit Queue
f5f109ca11 Merge pull request #38292 from gmarek/daemon
Automatic merge from submit-queue

Add Daemons to Load/Density tests

cc @jeremyeder @timstclair @sjug
2016-12-09 07:29:15 -08:00
Kubernetes Submit Queue
72b52d4334 Merge pull request #38302 from Crassirostris/revert-logging-e2e-verbosity
Automatic merge from submit-queue

Revert "Make logging for gcl e2e test more verbose"

Revert test change in favor of https://github.com/kubernetes/kubernetes/pull/38213

CC @piosz
2016-12-09 06:49:21 -08:00
Kubernetes Submit Queue
52e1b36961 Merge pull request #38462 from gmarek/print
Automatic merge from submit-queue

Make resource gatherer print the data about resource usage in case of…
2016-12-09 06:07:57 -08:00
Jerzy Szczepkowski
2b070e1724 HPA e2e tests: fixed waiting for service creation.
HPA e2e tests: fixed waiting for service creation. Fixes #32512.
2016-12-09 14:55:51 +01:00
gmarek
bfe2a2b03c Add Daemons to Load/Density tests 2016-12-09 14:31:46 +01:00
gmarek
3361576f3b Make resource gatherer print the data about resource usage in case of failure 2016-12-09 11:55:40 +01:00
Wojciech Tyczynski
a9ec31209e GetOptions - fix tests 2016-12-09 09:42:01 +01:00
Kubernetes Submit Queue
81dd16a4ae Merge pull request #38244 from MrHohn/e2e-reboot-drop
Automatic merge from submit-queue (batch tested with PRs 36419, 38330, 37718, 38244, 38375)

Guarantees drop packets commands succeed in reboot test

Fixes the main case in #33405 and #36230.
Previous attempted fix in #38057.

During the reboot test, the iptables command that was supposed to take the node offline failed to exec. 
Turned out the xtables lock was holding by other processes led to this failure. Logs as below:
```
I1202 20:00:29.686] Dec  2 20:00:29.685: INFO: ssh jenkins@146.148.111.167:22: stdout:
"+ sleep 10
+ sudo iptables -I INPUT 1 -s 127.0.0.1 -j ACCEPT
Another app is currently holding the xtables lock. Perhaps you want to use the -w option?"
I1202 20:00:29.686] Dec  2 20:00:29.685: INFO: ssh jenkins@146.148.111.167:22: stderr:    ""
I1202 20:00:29.686] Dec  2 20:00:29.685: INFO: ssh jenkins@146.148.111.167:22: exit code: 0
```

This reboot test won't pass if any one of these iptables commands fails. This PR put "reboot" commands into while loops to guarantee it retries until succeed.

`sudo iptables -t filter -nL` is removed since it is clear now that the `FILTER` rules won't be clobbered.

(Tests passed on local cluster.)

@bprashanth
2016-12-08 17:13:58 -08:00
Kubernetes Submit Queue
b0b6f3c256 Merge pull request #38401 from liggitt/addressable-deep-copy
Automatic merge from submit-queue (batch tested with PRs 36071, 32752, 37998, 38350, 38401)

Pass addressable values to DeepCopy

Extracted from https://github.com/kubernetes/kubernetes/pull/35728

These are the places we are currently calling DeepCopy incorrectly, and we need to fix, even if we don't pick up the changes to DeepCopy in #35728:
* creating a new cloner means we have no generated functions registered
* passing non-addressable values doesn't pick up generated deep copy functions, and forces us into reflective mode
2016-12-08 16:26:00 -08:00
Kubernetes Submit Queue
c294bf0d06 Merge pull request #38350 from spxtr/ExpectoPatronum
Automatic merge from submit-queue (batch tested with PRs 36071, 32752, 37998, 38350, 38401)

Eradicate ExpectNoError from test/e2e.

```
$ cd test/e2e
$ sed -i "s/\tExpectNoError/\tframework.ExpectNoError/g" *.go
```
2016-12-08 16:25:58 -08:00
Zihong Zheng
055a76f005 Guarantees drop packets commands succeed in reboot test 2016-12-08 13:28:22 -08:00
Jordan Liggitt
6819706adf
Pass addressable values to DeepCopy 2016-12-08 14:16:01 -05:00
Madhusudan.C.S
c1cede22cf Use the serviceShard variable in the service shard block, not the service variable. 2016-12-08 11:13:30 -08:00
Kubernetes Submit Queue
126a842832 Merge pull request #38377 from jszczepkowski/hpa-e2e-fix4
Automatic merge from submit-queue (batch tested with PRs 38377, 36365, 36648, 37691, 38339)

HPA e2e tests: fixed problem w/blocking channel.
2016-12-08 10:51:54 -08:00
Kubernetes Submit Queue
907a80c7af Merge pull request #37837 from gmarek/secrets
Automatic merge from submit-queue

Add secrets to Density and Load tests

cc @jeremyeder @timstclair @sjug
2016-12-08 08:36:03 -08:00
gmarek
be3889810d Add secrets to Density and Load tests 2016-12-08 11:14:43 +01:00
Kubernetes Submit Queue
99c066efa7 Merge pull request #38260 from fraenkel/port_forward_readiness
Automatic merge from submit-queue

Wait for the port to be ready before starting

Fixes the portforward flakes. See #27673 & #27680
2016-12-08 02:10:46 -08:00
Jerzy Szczepkowski
e94d2fdc4e HPA e2e tests: fixed problem w/blocking channel.
HPA e2e tests: fixed problem w/blocking channel. Resolves #38298.
2016-12-08 10:59:58 +01:00
Kubernetes Submit Queue
258971002f Merge pull request #37850 from MrHohn/gke-dns-autoscale
Automatic merge from submit-queue (batch tested with PRs 37092, 37850)

Turns on dns horizontal scaling tests for GKE

Seems like the dns-autoscaler is already enabled in [this recent gke build](https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gci-gke/769/).
Turning on the corresponding e2e tests to increase test coverage.

Probably better to wait for this fix #37261 to go in first.

@bowei @bprashanth 
cc @maisem @roberthbailey
2016-12-07 18:13:11 -08:00
Joe Finney
c9edc1c9be Eradicate ExpectNoError from test/e2e. 2016-12-07 17:51:35 -08:00
Kubernetes Submit Queue
350c14b81c Merge pull request #38141 from bprashanth/lb_testing
Automatic merge from submit-queue (batch tested with PRs 37325, 38313, 38141, 38321, 38333)

Cleanup firewalls, add nginx ingress to presubmit

Make the firewall cleanup code follow the same pattern as the other cleanup functions, and add the nginx ingress e2e to presubmit. 

Planning to watch the test for a bit, and if it works alright, I'll add the other Ingress e2e to post-submit merge blocker.
2016-12-07 17:14:18 -08:00
Kubernetes Submit Queue
4b44926f90 Merge pull request #37325 from ivan4th/fix-e2e-with-complete-pods-in-kube-system-ns
Automatic merge from submit-queue (batch tested with PRs 37325, 38313, 38141, 38321, 38333)

Fix running e2e with 'Completed' kube-system pods

As of now, e2e runner keeps waiting for pods in `kube-system` namespace to be "Running and Ready" if there are any pods in `Completed` state in that namespace.
This for example happens after following [Kubernetes Hosted Installation](http://docs.projectcalico.org/v2.0/getting-started/kubernetes/installation/#kubernetes-hosted-installation) instructions for Calico, making it impossible to run conformance tests against the cluster. It's also to possible to reproduce the problem like that:
```
$ cat testjob.yaml
apiVersion: batch/v1
kind: Job
metadata:
  name: tst
  namespace: kube-system
spec:
  template:
    metadata:
      name: tst
    spec:
      containers:
      - name: tst
        image: busybox
        command: ["echo",  "test"]
      restartPolicy: Never
$ kubectl create -f testjob.yaml
$ go run hack/e2e.go -v --test --test_args='--ginkgo.focus=existing\s+RC'
```
2016-12-07 17:14:14 -08:00
Zihong Zheng
69dc74bab3 Turns on dns horizontal scaling tests for GKE 2016-12-07 16:05:22 -08:00
Kubernetes Submit Queue
66f5d07e05 Merge pull request #38255 from bprashanth/svc_cleanup
Automatic merge from submit-queue

Delete regional static-ip instead of global for type=lb

Global vs region is the difference between 
```
$ gcloud compute addresses delete foo --global
$ gcloud compute addresses delete foo --region us-central1
```

Type=LoadBalancer users the second type and were were doing the first. 
Also adds some logging.
2016-12-07 13:38:50 -08:00
bprashanth
e1daee5b37 Delete regional static-ip instead of global for type=lb 2016-12-07 11:33:04 -08:00
Michael Fraenkel
c6d6dcfa1e Re-enable flaky tests 2016-12-07 14:00:39 -05:00
Michael Fraenkel
e4542e2c67 Wait for the port to be ready before starting
- wait until the port is ready
- verify the container terminated
2016-12-07 14:00:03 -05:00
Kubernetes Submit Queue
0f2c6fc7fc Merge pull request #37009 from sjenning/fix-perms-with-fsgroup
Automatic merge from submit-queue (batch tested with PRs 38294, 37009, 36778, 38130, 37835)

fix permissions when using fsGroup

Currently, when an fsGroup is specified, the permissions of the defaultMode are not respected and all files created by the atomic writer have mode 777.  This is because in `SetVolumeOwnership()` the `filepath.Walk` includes the symlinks created by the atomic writer.  The symlinks have mode 777 when read from `info.Mode()`.  However, when the are chmod'ed later, the chmod applies to the file the symlink points to, not the symlink itself, resulting in the wrong mode for the underlying file.

This PR skips chmod/chown for symlinks in the walk since those operations are carried out on the underlying file which will be included elsewhere in the walk.

xref https://bugzilla.redhat.com/show_bug.cgi?id=1384458

@derekwaynecarr @pmorie
2016-12-07 10:45:16 -08:00
Mik Vyatskov
58a122dd21 Revert "Make logging for gcl e2e test more verbose"
This reverts commit 477ffa403e.
2016-12-07 18:59:37 +01:00
Kubernetes Submit Queue
2b1ab2f0d4 Merge pull request #38281 from mwielgus/fix-e2e-util-most
Automatic merge from submit-queue (batch tested with PRs 38282, 38281)

Fix skip logic in e2e framework

Fixes 37792

cc: @wojtek-t
2016-12-07 05:33:12 -08:00
Mik Vyatskov
70b83aa6cc Increase test timeout 2016-12-07 13:26:22 +01:00
Dr. Stefan Schimanski
a445c5c0f2 e2e: mark 3rd portforwarding test as flaky 2016-12-07 12:42:46 +01:00
Marcin Wielgus
eca87cfea8 Fix skip logic in e2e framework 2016-12-07 12:07:27 +01:00
Kubernetes Submit Queue
6a1d0f0b7b Merge pull request #38221 from kubernetes/revert-38157-disable-overlapping-deployment
Automatic merge from submit-queue (batch tested with PRs 38173, 38151, 38197, 38221)

Revert "Disable "overlapping deployment" test on GKE temporarily. #32947"

Reverts kubernetes/kubernetes#38157
2016-12-06 21:14:35 -08:00
Kubernetes Submit Queue
544ccd2e35 Merge pull request #38197 from kargakis/wait-for-readyrs-before-adopting
Automatic merge from submit-queue (batch tested with PRs 38173, 38151, 38197, 38221)

test: wait for ready replica set before adopting

Reworked version of https://github.com/kubernetes/kubernetes/pull/36439 which was reverted in https://github.com/kubernetes/kubernetes/pull/38049. This PR doesn't use any of the new status API added in replica sets so it should cause no trouble with upgrade tests.

@kubernetes/deployment @smarterclayton
2016-12-06 21:14:33 -08:00
Kubernetes Submit Queue
f920391755 Merge pull request #38139 from sjug/clusterverify_ns
Automatic merge from submit-queue (batch tested with PRs 37032, 38119, 38186, 38200, 38139)

New ns param for NewClusterVerification

**What this PR does / why we need it**: Allows the test to specify alternate namespaces to when waiting for pods to be in a specific state.

**Which issue this PR fixes**: fixes #38138

**Special notes for your reviewer**: Minor fix

**Release note**: None
2016-12-06 18:29:40 -08:00
Kubernetes Submit Queue
8d761a0735 Merge pull request #38194 from sttts/sttts-skip-portforward-e2e-flake
Automatic merge from submit-queue

e2e: mark portforward tests as flaky

As long as we don't get https://github.com/kubernetes/kubernetes/issues/27673 and https://github.com/kubernetes/kubernetes/issues/27680 under control, this PR marks them as `[Flaky]`.

There is https://github.com/kubernetes/kubernetes/pull/37072 in flight which might improve the situation, but is blocked on socat issues right now with half-open connections.

cc @kubernetes/sig-testing
2016-12-06 17:02:28 -08:00
bprashanth
f609546b34 Cleanup firewalls, add nginx ingress to presubmit 2016-12-06 14:25:47 -08:00
Ryan Hitchman
c1fa8cb8a4 Revert "Disable "overlapping deployment" test on GKE temporarily. #32947" 2016-12-06 14:12:21 -08:00
Seth Jennings
51ae5a34b9 fix permissions when using fsGroup 2016-12-06 14:04:16 -06:00
Marcin Wielgus
1266ee7adf Skip not registered nodes in labeling in CA e2e tests 2016-12-06 20:32:24 +01:00
Michail Kargakis
884b0a6f20 test: wait for ready replica set before adopting 2016-12-06 17:37:37 +01:00
Dr. Stefan Schimanski
2d9908a812 Mark portforward e2e tests as flaky 2016-12-06 16:52:33 +01:00
Kubernetes Submit Queue
c3a2cc5370 Merge pull request #38185 from kargakis/restore-poll-for-test-util
Automatic merge from submit-queue

test: restore polling for stabilizing deployment tests

Discussed in 886052c225 (commitcomment-20081416)

@rmmh @janetkuo @wojtek-t ptal
2016-12-06 06:31:01 -08:00
gmarek
070f0979c2 Make it possible to run Load test using Deployments or ReplicaSets 2016-12-06 12:22:58 +01:00
Michail Kargakis
4949d61b39 test: restore polling for stabilizing deployment tests 2016-12-06 11:57:32 +01:00
Kubernetes Submit Queue
2708f5c7dd Merge pull request #37870 from madhusudancs/fed-svc-no-cascading-delete-e2e-fix
Automatic merge from submit-queue

[Federation] Separate the cleanup phases of service and service shards so that service shards can be cleaned up even after the service is deleted elsewhere.

Fixes Federated Service e2e test.

This separation is necessary because "Federated Service DNS should be
able to discover a federated service" e2e test recently added a case
where it deletes the service from federation but not the shards from
the underlying clusters.

Because of the way cleanup was implemented in the AfterEach block
currently, we did not cleanup any of the underlying shards. However,
separating the two phases of the cleanup needs this separation.

cc @kubernetes/sig-cluster-federation @nikhiljindal
2016-12-05 23:50:33 -08:00
Kubernetes Submit Queue
e8b19e4ed1 Merge pull request #38149 from bprashanth/lb_e2e
Automatic merge from submit-queue

Move some lb tests to the slow suite

These tests have been stable, so move the basic ones to slow.
2016-12-05 21:43:13 -08:00
Kubernetes Submit Queue
216a03749f Merge pull request #37261 from MrHohn/dnsautoscale-wait-pods
Automatic merge from submit-queue (batch tested with PRs 37328, 38102, 37261, 31321, 38146)

Fixes flake: wait for dns pods terminating after test completed

From #37194. Based on #36600. Please only look at the second commit.

As mentioned in [comment](https://github.com/kubernetes/kubernetes/issues/37194#issuecomment-262007174), "DNS horizontal autoscaling" test does not wait for the additional pods to be terminated and this may lead to the failure of later tests.

This fix adds a wait loop at the end of the serial test to ensure the cluster recovers to the original state. In the non-serial test it does not wait for the additional pods terminating because it will not affect other tests, given they are able to be run simultaneously. Plus wait for pods terminating will take certain amount of time.

Note this only fixes certain case of #37194. I noticed there are other failures irrelevant to dns autoscaler. LIke [this one](https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gci-gce-serial/34/).

@bprashanth @Random-Liu
2016-12-05 20:16:51 -08:00
Kubernetes Submit Queue
b1dba6cd9f Merge pull request #37328 from caesarxuchao/fix-tpr-deleteoptions
Automatic merge from submit-queue (batch tested with PRs 37328, 38102, 37261, 31321, 38146)

Make thirdparty codec able to decode DeleteOptions

Fix #37278. 

Without this PR, the gvk sent to the delegated codec will be the thirdparty one, which is not recognized by the delegated codec (usually api.Codecs).
2016-12-05 20:16:48 -08:00
Kubernetes Submit Queue
637a5703f6 Merge pull request #37634 from Crassirostris/gcl-e2e-debugging
Automatic merge from submit-queue (batch tested with PRs 38076, 38137, 36882, 37634, 37558)

Make logging for gcl e2e test more verbose

To help debug https://github.com/kubernetes/kubernetes/issues/37241

CC @piosz
2016-12-05 19:25:55 -08:00
Kubernetes Submit Queue
f587c7a49f Merge pull request #38076 from kargakis/requeue-replica-sets-for-availability-checks
Automatic merge from submit-queue (batch tested with PRs 38076, 38137, 36882, 37634, 37558)

Requeue replica sets for availability checks

See https://github.com/kubernetes/kubernetes/issues/35355#issuecomment-264746268 for more details

@kubernetes/deployment @smarterclayton
2016-12-05 19:25:49 -08:00
Ryan Hitchman
8907762844 Disable "overlapping deployment" test on GKE temporarily. #32947 2016-12-05 16:58:52 -08:00
Chao Xu
6534661a04 make thirdparty codec able to decode DeleteOptions 2016-12-05 15:54:02 -08:00
bprashanth
0d79b01adc Move some lb tests to the slow suite 2016-12-05 15:35:55 -08:00
Sebastain Jug
98864265a2 New ns param for NewClusterVerification 2016-12-05 16:27:07 -05:00
Kubernetes Submit Queue
4fed3269dd Merge pull request #36352 from kargakis/fix-deployment-helper
Automatic merge from submit-queue (batch tested with PRs 36352, 36538, 37976, 36374)

test: update deployment helper to return better error messages

@kubernetes/deployment the problem with https://github.com/kubernetes/kubernetes/issues/36270 is that the selector key is never added in the deployment but this change would make it clearer.
2016-12-05 11:08:42 -08:00
Madhusudan.C.S
28a7ff3cd0 Test owners update. 2016-12-05 10:33:16 -08:00
Madhusudan.C.S
ae03433a70 Added a comment about the reasoning. 2016-12-05 10:33:16 -08:00
Madhusudan.C.S
bcddb157e4 [Federation] Separate the cleanup phases of service and service shards so that service shards can be cleaned up even after the service is deleted elsewhere.
This separation is necessary because "Federated Service DNS should be
able to discover a federated service" e2e test recently added a case
where it deletes the service from federation but not the shards from
the underlying clusters.

Because of the way cleanup was implemented in the AfterEach block
currently, we did not cleanup any of the underlying shards. However,
separating the two phases of the cleanup needs this separation.
2016-12-05 10:33:15 -08:00
Dr. Stefan Schimanski
458d2b2fe4 Add verb support for discovery client 2016-12-05 12:36:05 +01:00
Jerzy Szczepkowski
2f6ba11fd8 Merge pull request #38074 from mwielgus/fix-ca-e2e
Fix error handling in cluster autoscaler e2e test
2016-12-05 09:52:04 +01:00
Michail Kargakis
4dfe2a2348 test: update e2e rollover test to use minReadySeconds 2016-12-05 02:47:12 +01:00
Marcin Wielgus
f710480e91 Fix error handling in cluster autoscaler e2e test 2016-12-05 00:35:15 +01:00
Clayton Coleman
3454a8d52c
refactor: update bazel, codec, and gofmt 2016-12-03 19:10:53 -05:00
Clayton Coleman
5df8cc39c9
refactor: generated 2016-12-03 19:10:46 -05:00
Kubernetes Submit Queue
07dd740ac0 Merge pull request #38049 from smarterclayton/revert_36439
Automatic merge from submit-queue (batch tested with PRs 38049, 37823, 38000, 36646)

Revert "test: update rollover test to wait for available rs before adopting"

This reverts commit 5b7bf78f3f from pr #36439 which appears to have mostly broken the gci-gke test.
2016-12-03 14:20:49 -08:00
Kubernetes Submit Queue
ad72d1728c Merge pull request #37547 from sttts/sttts-cut-off-genericapserver-from-registry
Automatic merge from submit-queue

Cut genericapserver->registry dependency

Towards moving genericapiserver into staging.
2016-12-03 12:22:20 -08:00
Kubernetes Submit Queue
4451410bdc Merge pull request #37647 from bowei/priv-pod-e2e
Automatic merge from submit-queue (batch tested with PRs 37692, 37785, 37647, 37941, 37856)

Remove extraneous curl, pods, etc from privileged pod test
2016-12-03 11:45:00 -08:00
Clayton Coleman
7aacb61fe1
Revert "test: update rollover test to wait for available rs before adopting"
This reverts commit 5b7bf78f3f.
2016-12-03 14:42:50 -05:00
Dr. Stefan Schimanski
1f5511b131 Move RESTStorageProvider interface into pkg/master 2016-12-03 18:35:15 +01:00
Kubernetes Submit Queue
8bf1ae8313 Merge pull request #37094 from sjug/reshuffle_gobindata_dep
Automatic merge from submit-queue (batch tested with PRs 37094, 37663, 37442, 37808, 37826)

Moved gobindata, refactored ReadOrDie refs

**What this PR does / why we need it**: Having gobindata inside of test/e2e/framework prevents external projects from importing the framework. Moving it out and managing refs fixes this problem.

**Which issue this PR fixes**: fixes #37007
2016-12-03 04:27:46 -08:00
Kubernetes Submit Queue
df89a3c082 Merge pull request #37103 from sttts/sttts-portforwardtester-linger-on-exit
Automatic merge from submit-queue (batch tested with PRs 37608, 37103, 37320, 37607, 37678)

portfordwardtester: avoid data loss during send+close+exit

Following https://blog.netherlabs.nl/articles/2009/01/18/the-ultimate-so_linger-page-or-why-is-my-tcp-not-reliable when closing the sending connection in the port-forward-tester container.

Potentially fixing https://github.com/kubernetes/kubernetes/issues/27680
2016-12-02 23:32:45 -08:00
Kubernetes Submit Queue
0ca2b4cbf1 Merge pull request #37258 from timstclair/apparmor-test
Automatic merge from submit-queue (batch tested with PRs 37997, 37939, 37990, 36700, 37258)

Add cluster-level AppArmor E2E test

My goal is to reuse this test for an automated cluster upgrade test.
2016-12-02 19:26:52 -08:00
Anirudh
9a9f7ec81d Add in GKE to list. 2016-12-02 16:05:28 -08:00
Dawn Chen
388fb2028c Revert "Skip StatefulSet e2e tests if this resource is not found" 2016-12-02 15:50:19 -08:00
Kubernetes Submit Queue
d71154b910 Merge pull request #36439 from kargakis/update-rollover-test
Automatic merge from submit-queue

test: update rollover test to wait for available rs before adopting

Scenario that happened in https://github.com/kubernetes/kubernetes/issues/35355#issuecomment-257808460

-- Replica set that is about to be adopted has 2 out of 4 ready replicas
-- Deployment is created with 4 replicas, adopts pre-existing replica set, creates a new one, and starts rolling replicas over to the new replica set.
```
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled down replica set test-rollover-controller to 3
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled up replica set test-rollover-deployment-2505289747 to 1
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment-2505289747: {replicaset-controller } SuccessfulCreate: Created pod: test-rollover-deployment-2505289747-iuiei
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment-2505289747-iuiei: {default-scheduler } Scheduled: Successfully assigned test-rollover-deployment-2505289747-iuiei to gke-jenkins-e2e-default-pool-33c0400e-6q5m
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:05 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled up replica set test-rollover-deployment-2505289747 to 2
```
At this point there is no minimum availability for the Deployment (maxUnavailable is 1 meaning desired minimum available is 3 but we only have 2), and the new replica set uses a non-existent image. New replica set is scaled up to 1 (maxSurge is 1), then old replica set is scaled down by one, because cleanupUnhealthyReplicas observes that it has 2 unhealthy replicas - it can only scale down one though because the [maximum replicas it can cleanup is one](d87dfa2723/pkg/controller/deployment/rolling.go (L125)) (4+1-3-1). New replica set is scaled to 2. Available replicas are still 2 (third replica from the old replica set has yet to come up).
-- Deployment is rolled over with a new update. Test reaches for the WaitForDeploymentStatus check but there are only 2 availableReplicas (maxUnavailable is still violated).

This change makes the test wait for a healthy replica set before proceeding thus it should never hit the scenario described above.

@kubernetes/deployment
2016-12-02 12:48:44 -08:00
Tim St. Clair
9ea7e0af26
Add cluster-level AppArmor E2E test 2016-12-02 10:37:28 -08:00
Sebastian Jug
79202656bc - Moved gobindata, refactored ReadOrDie refs
- Remaining spaghetti untangled
- Missed bazel update and a few hardcoded refs
- New instance of framework.ReadOrDie reference removed post rebase
- Resolve new clientset rebase
- Fixed e2e/generated BUILD dep
- A space
- Missed gobindata ref in golang.sh
2016-12-02 12:57:03 -05:00
Kubernetes Submit Queue
7ec3be4c8e Merge pull request #36964 from ixdy/gobin-build
Automatic merge from submit-queue

Build vendored copy of go-bindata and use that in go generate step

**What this PR does / why we need it**: as the title says, uses the vendored version of `go-bindata` rather than expecting developers to `go get` it (when building outside docker).

**Which issue this PR fixes**: fixes #34067, partially addresses #36655

**Special notes for your reviewer**: we still call `go generate` far too many times:
```console
~/.../src/k8s.io/kubernetes $ which go-bindata
~/.../src/k8s.io/kubernetes $ make
+++ [1116 17:35:28] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:29] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:30] Building go targets for linux/amd64:
    cmd/libs/go2idl/deepcopy-gen
+++ [1116 17:35:35] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:35] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:36] Building go targets for linux/amd64:
    cmd/libs/go2idl/defaulter-gen
+++ [1116 17:35:41] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:41] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:42] Building go targets for linux/amd64:
    cmd/libs/go2idl/conversion-gen
+++ [1116 17:35:47] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:47] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:48] Building go targets for linux/amd64:
    cmd/libs/go2idl/openapi-gen
+++ [1116 17:35:56] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:56] Generating bindata:
    test/e2e/framework/gobindata_util.go
```
Fixing that is a separate effort, though.

cc @sebgoa @ZhangBanger
2016-12-02 07:29:01 -08:00
Kubernetes Submit Queue
251333971d Merge pull request #37418 from bprashanth/ing_cleanup
Automatic merge from submit-queue

Cleanup old cloud resources after 48 hours

With this pr the ingress e2e purges old leaked resources (>48h), so even if tests fail due to leaks, the entire queue won't close till someone bumps up quota through a manual request.
2016-12-02 03:31:38 -08:00
Kubernetes Submit Queue
6abb472357 Merge pull request #37720 from freehan/lb-src-update
Automatic merge from submit-queue

Fix Service Update on LoadBalancerSourceRanges Field

Fixes: https://github.com/kubernetes/kubernetes/issues/33033
Also expands: https://github.com/kubernetes/kubernetes/pull/32748
2016-12-01 18:21:39 -08:00
Minhan Xia
0ea7b950d3 add e2e test for updating lb source range 2016-12-01 13:56:21 -08:00
Daniel Smith
5b1d875f27 Revert "Modify GCI mounter to enable NFSv3" 2016-12-01 11:47:24 -08:00
Kubernetes Submit Queue
069c263abd Merge pull request #37639 from MrHohn/e2e-reboot-dump
Automatic merge from submit-queue

Adds termination hook in reboot test for debugging

From #33405 and #36230.

Logs the SSH command issued for dropping inbound / outbound traffic to file and dump it out when test ends.

The first `sudo iptables -t filter -nL` is called to confirm the rules are injected. The second `sudo iptables -t filter -nL` is to check whether the rules get clobbered. Adds `date` in between to check time frame.

@bprashanth @freehan
2016-12-01 07:52:07 -08:00
Kubernetes Submit Queue
13f3b23cf6 Merge pull request #37812 from mwielgus/dis_big_cl
Automatic merge from submit-queue

Skip some disruption e2e test in big clusters

cc: @wojtek-t @davidopp
2016-12-01 06:30:51 -08:00
Marcin Wielgus
cf92f1cdba Skip some disruption e2e test in big clusters 2016-12-01 14:26:38 +01:00
Jeff Grafton
0d9d623f04 Build vendored copy of go-bindata and use that in go generate step
Additionally remove all instances of `go get`ing go-bindata
2016-11-30 22:23:40 -08:00
Kubernetes Submit Queue
6c2c12fafa Merge pull request #37582 from jingxu97/Nov/retrynfsv3
Automatic merge from submit-queue

Modify GCI mounter to enable NFSv3
2016-11-30 21:59:08 -08:00
Kubernetes Submit Queue
b2cabee2f2 Merge pull request #37412 from janetkuo/revert-revert-remove-slow-statefulset
Automatic merge from submit-queue

Revert "Revert "Remove [Slow] from statefulset basic tests""

Reverts #37387, see https://github.com/kubernetes/kubernetes/pull/37387#issuecomment-262629767

Don't merge yet until #37393 is fixed
2016-11-30 21:11:09 -08:00
Kubernetes Submit Queue
5bba858b33 Merge pull request #37231 from janetkuo/stateful-set-example-files
Automatic merge from submit-queue

Update Stateful Set example files for 1.5

1. Remove initialized annotation from statefulset examples
2. Update storage class annotation to beta in statefulset examples
3. Remove alpha limitation on PetSet in cassandra example

cc @erictune @foxish @kow3ns @enisoc @chrislovecnm @kubernetes/sig-apps

```release-note
NONE
```
2016-11-30 21:11:08 -08:00
Zihong Zheng
c5e68b5451 Fixes flake: wait for dns pods terminating after test completed 2016-11-30 21:04:04 -08:00
Kubernetes Submit Queue
737edd02a4 Merge pull request #35258 from feiskyer/package-aliase
Automatic merge from submit-queue

Fix package aliases to follow golang convention

Some package aliases are not not align with golang convention https://blog.golang.org/package-names. This PR fixes them. Also adds a verify script and presubmit checks.

Fixes #35070.

cc/ @timstclair @Random-Liu
2016-11-30 16:39:46 -08:00
Kubernetes Submit Queue
d9fcabcbd0 Merge pull request #37290 from mwielgus/rev-fed-dep
Automatic merge from submit-queue

Revision handling in federated deployment controller

Deployment controller in regular kubernetes automatically adds an annotation in deployment. This causes a bit of confusion in controller and tests. This PR skips revision annotation in checks. In the next K8S release we will need to have better support for deployment revisions. 

Helps with #36588

cc: @nikhiljindal @madhusudancs
2016-11-30 09:21:25 -08:00
Kubernetes Submit Queue
d51f07b60d Merge pull request #37353 from nikhiljindal/serviceDelete
Automatic merge from submit-queue

Stop deleting underlying services when federation service is deleted

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

Fixing federation service controller to not delete services from underlying clusters when federated service is deleted.
None of the federation controller should do this unless explicitly asked by the user using DeleteOptions. This is the only federation controller that does that.

cc @kubernetes/sig-cluster-federation @madhusudancs

```release-note
federation service controller: stop deleting services from underlying clusters when federated service is deleted.
```
2016-11-30 06:02:39 -08:00
Filip Grzadkowski
cf25ac2655 Merge pull request #37675 from mwielgus/fix_kubectl_e2e
Fix kubectl call in autoscaling e2e test
2016-11-30 14:31:40 +01:00
Marcin Wielgus
b8e7d08968 Fix kubectl call in autoscaling e2e test 2016-11-30 10:28:31 +01:00
Kubernetes Submit Queue
50fb2845d1 Merge pull request #37006 from jayunit100/skip_dont_fail
Automatic merge from submit-queue

Skip rather than fail networking tests on single node

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

Needed for the general e2e tidying we need to do for flakey slow tests, imo pre 1.5, see #31402  and so on.

**Which issue this PR fixes** * 

Dont fail multinode tests if on a single node cluster, skip instead.
2016-11-30 01:26:45 -08:00
Pengfei Ni
f584ed4398 Fix package aliases to follow golang convention 2016-11-30 15:40:50 +08:00
Kubernetes Submit Queue
320b30479f Merge pull request #37583 from mtaufen/test-fr-ssh-issue
Automatic merge from submit-queue

Fix nil pointer dereference in test framework

Checking the `result.Code` prior to `err` in the if statement causes a panic if result is `nil`. It turns out the formatting of the error is already in `IssueSSHCommandWithResult`, so removing redundant code is enough to fix the issue. Logging the SSH result was also redundant, so I removed that as well.
2016-11-29 23:25:23 -08:00
Kubernetes Submit Queue
ea576b7c53 Merge pull request #36600 from MrHohn/e2e-dnsautoscaling-fix
Automatic merge from submit-queue

Fixes dns autoscaling test flakes

Fixes  #36457 and fixes #36569.

#36457 is flake due to the 10 minutes timeout for scaling down cluster. Changes to use `scaleDownTimeout` from [test/e2e/cluster_size_autoscaling.go](https://github.com/kubernetes/kubernetes/blob/master/test/e2e/cluster_size_autoscaling.go), which is 15 minutes.

The failure in #36569 is because we get the schedulable nodes number at the beginning of the test and assume it will not change unless we manually change the cluster size. But below logs indicate there may be nodes become ready after the test has begun. 

```
[BeforeEach] [k8s.io] DNS horizontal autoscaling
  /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/dns_autoscaling.go:71
Nov 10 00:36:26.951: INFO: Condition Ready of node jenkins-e2e-minion-group-x6w1 is false instead of true. Reason: KubeletNotReady, message: Kubenet does not have netConfig. This is most likely due to lack of PodCIDR
STEP: Replace the dns autoscaling parameters with testing parameters
Nov 10 00:36:26.961: INFO: DNS autoscaling ConfigMap updated.
STEP: Wait for kube-dns scaled to expected number
Nov 10 00:36:26.961: INFO: Waiting up to 5m0s for kube-dns reach 8 replicas
...
Expected error:
      <*errors.errorString | 0xc420b17ef0>: {
          s: "err waiting for DNS replicas to satisfy 8, got 9: timed out waiting for the condition",
      }
      err waiting for DNS replicas to satisfy 8, got 9: timed out waiting for the condition
  not to have occurred
```

This fix puts the logic of counting schedulable nodes into the polling loop. By doing so, the test will have the correct expected replicas count even if schedulable nodes change in between.

@bowei @bprashanth

---

Updates: all `ExpectNoError(err)` are changed to `Expect(err).NotTo(HaveOccurred())`
2016-11-29 15:52:13 -08:00
Bowei Du
67fec72a5b Remove extraneous curl, pods, etc from privileged pod test
Removing unneeded dependencies that hopefully will reduce test noise.
2016-11-29 12:52:16 -08:00
Jing Xu
80f2e58ccc Modify GCI mounter to enable NFSv3
This PR is a retry for PR #36610
2016-11-29 10:50:33 -08:00
Zihong Zheng
15e3dd422b Adds termination hook in reboot test for debugging 2016-11-29 10:10:38 -08:00
Mik Vyatskov
477ffa403e Make logging for gcl e2e test more verbose 2016-11-29 18:19:56 +01:00
Kubernetes Submit Queue
a3e1e1fa00 Merge pull request #37411 from nikhiljindal/serviceConfigMap
Automatic merge from submit-queue

federation service e2e: Creating configmap for kube-dns

Ref #37105 and #37143.

Creating kube-dns config map to pass federations flag to kube-dns.
This is required since we moved to the new add on manager. With the old add on manager, we were using kube-dns rc that included the federations flag.

cc @kubernetes/sig-cluster-federation @madhusudancs @bowei @MrHohn 

Verified that the tests pass with this change.
2016-11-29 07:31:58 -08:00
Dr. Stefan Schimanski
2bb7903a39 portfordwardtester: avoid data loss during send+close+exit 2016-11-29 09:42:14 +01:00
nikhiljindal
6b8d0caac2 Creating configmap for kube-dns 2016-11-29 00:31:33 -08:00
Michael Taufen
f789ecdcaf Fix nil pointer dereference in test framework
Checking the result.Code prior to err in the if statement causes a panic
if result is nil. It turns out the formatting of the error is already in
IssueSSHCommandWithResult, so removing redundant code is enough to fix
the issue. Logging the SSH result was also redundant, so I removed that
as well.
2016-11-28 14:44:51 -08:00
Kubernetes Submit Queue
56836cace7 Merge pull request #37394 from nikhiljindal/deploymentE2e
Automatic merge from submit-queue

Fixing a typo in deployment e2e

Ref https://github.com/kubernetes/kubernetes/issues/37105 and https://github.com/kubernetes/kubernetes/issues/37143.

Fixing the failing deployment e2e.
There are 3 deployment cases failing right now. https://github.com/kubernetes/kubernetes/pull/37290 fixes the first and this PR fixes the other 2.

cc @kubernetes/sig-cluster-federation @madhusudancs @mwielgus
2016-11-28 13:26:06 -08:00
Kubernetes Submit Queue
448dfc7b30 Merge pull request #37489 from mwielgus/enable-e2e-gke
Automatic merge from submit-queue

Enable PDB e2e tests on GKE

cc: @davidopp
2016-11-28 13:25:55 -08:00
Kubernetes Submit Queue
cbd87c3a13 Merge pull request #37481 from mwielgus/more-debug-ca-e2e
Automatic merge from submit-queue

Add more debug information around strange failure in e2e tests

To better understand problems in https://github.com/kubernetes/kubernetes/issues/33754. 

cc: @fgrzadkowski @piosz
2016-11-28 11:45:17 -08:00
Michail Kargakis
5b7bf78f3f test: update rollover test to wait for available rs before adopting 2016-11-28 14:00:59 +01:00
Harry Zhang
3777777e13 Update cluster_size_autoscaling.go
CreateNodeSelectorPods respects nodeSelector
2016-11-28 14:44:24 +08:00
Zihong Zheng
b77484987b Fixes dns autoscaling test flakes 2016-11-27 22:20:54 -08:00
Marcin Wielgus
313d4045af Add more debug information around strange failure in e2e tests 2016-11-25 17:42:53 +01:00
Marcin Wielgus
35843d52b6 Enable PDB e2e tests on GKE 2016-11-25 15:18:19 +01:00
Ivan Shvedunov
29fd58ad0e Fix running e2e with 'Completed' kube-system pods 2016-11-24 19:10:43 +03:00
Jerzy Szczepkowski
1959722243 Revert "Removed "feature" tag" 2016-11-24 11:52:31 +01:00
Clayton Coleman
35a6bfbcee
generated: refactor 2016-11-23 22:30:47 -06:00
Janet Kuo
d2c411aafe Revert "Revert "Remove [Slow] from statefulset basic tests""
This reverts commit ebce195ce1.
2016-11-23 16:31:04 -08:00
Chao Xu
bcc783c594 run hack/update-all.sh 2016-11-23 15:53:09 -08:00
Chao Xu
f0ad860d66 pkg/dns 2016-11-23 15:53:09 -08:00
Chao Xu
a55c71db4d test/e2e 2016-11-23 15:53:09 -08:00
nikhiljindal
34eae2207e Stop deleting underlying services when federation service is deleted 2016-11-23 13:02:39 -08:00
Dawn Chen
7c685579c0 Merge pull request #37389 from janetkuo/statefulset-skip-gke
Skip StatefulSet e2e tests if this resource is not found
2016-11-23 11:49:32 -08:00
nikhiljindal
3cfbe6aff8 Fixing a typo in deployment e2e 2016-11-23 11:18:32 -08:00
Kubernetes Submit Queue
696a88cffe Merge pull request #37356 from kubernetes/jszczepkowski-ha-feature
Automatic merge from submit-queue

Removed "feature" tag
2016-11-23 10:58:45 -08:00
Janet Kuo
b88bebded5 Remove initialized annotation from statefulset examples 2016-11-23 10:40:42 -08:00
Janet Kuo
060ff8ebe8 Skip StatefulSet e2e tests if this resource is not found 2016-11-23 10:08:09 -08:00
Janet Kuo
ebce195ce1 Revert "Remove [Slow] from statefulset basic tests"
This reverts commit 0744033d8c.
2016-11-23 09:13:43 -08:00
Piotr Szczesniak
a3e6ad4b9a Revert "Modify GCI mounter to enable NFSv3" 2016-11-23 13:15:37 +01:00
Jerzy Szczepkowski
d7cdb6bb6a Removed "feature" tag
Removed "feature" tag so that ha master tests will run by default.
2016-11-23 09:22:04 +01:00
Kubernetes Submit Queue
e801fcfc4a Merge pull request #36610 from jingxu97/Nov/nfsv3
Automatic merge from submit-queue

Modify GCI mounter to enable NFSv3

In order to make NFSv3 work, mounter needs to start rpcbind daemon. This
change modify mounter's Dockerfile and mounter script to start the
rpcbind daemon if it is not running on the host.

After this change, need to make push the image and update the sha number in Changelog.
2016-11-22 23:38:51 -08:00
Kubernetes Submit Queue
7a09ba96d8 Merge pull request #37243 from janetkuo/petset-e2e-rename
Automatic merge from submit-queue

Update [Feature:PetSet] e2e tests to [Feature:StatefulSet]

<!--  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**: Update StatefulSet e2e test feature tags from [Feature:PetSet] to [Feature:StatefulSet]

**Special notes for your reviewer**: Ref test-infra changes https://github.com/kubernetes/test-infra/pull/1151

cc @erictune @foxish @kow3ns @enisoc @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-11-22 22:52:52 -08:00
Kubernetes Submit Queue
e69b497e07 Merge pull request #37303 from krousey/e2eutil
Automatic merge from submit-queue

Guard the ready replica checking by server version

I fixed replica readiness checking for 1.4->1.5 upgrades by using a field that only exists in versions >=1.4.0 in #36924 

This fixed a lot of issues in 1.4->1.5 upgrade testing, but did not fix 1.3->1.5 upgrade tests. I've disabled replica checking for 1.3 masters as the old logic was broken anyway.

This will not affect the 1.3 CI tests. Just 1.3 -> {1.4, 1.5} upgrade tests.

https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/kubernetes-e2e-gke-container_vm-1.3-container_vm-1.5-upgrade-cluster-new/330?log
is an example of this breakage. This is the tell-tale logs:

```console
Nov 22 09:40:50.469: INFO: 11 / 11 pods in namespace 'kube-system' are running and ready (506 seconds elapsed)
Nov 22 09:40:50.469: INFO: expected 5 pod replicas in namespace 'kube-system', 0 are Running and Ready.
Nov 22 09:40:50.469: INFO: POD  NODE  PHASE  GRACE  CONDITIONS
```
2016-11-22 19:52:22 -08:00
bprashanth
1457d20464 Cleanup old cloud resources after 48 hours 2016-11-22 18:43:21 -08:00
Janet Kuo
0744033d8c Remove [Slow] from statefulset basic tests 2016-11-22 15:36:19 -08:00
Janet Kuo
420d32c503 Update [Feature:PetSet] e2e tests to [Feature:StatefulSet] 2016-11-22 15:36:19 -08:00
Kubernetes Submit Queue
e4724e8ab0 Merge pull request #37109 from Random-Liu/fix-lifecycle-hook-test
Automatic merge from submit-queue

Use netexec container in http lifecycle hook test.

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

The original test is using `"echo -e \"HTTP/1.1 200 OK\n\" | nc -l -p 1234` as a simple http server.

However, it seems that this is not very reliable, which may response before golang thinks it should.
So we get the error:
```
I1106 06:14:13.325397    2096 logs.go:41] Unsolicited response received on idle HTTP channel starting with "HTTP/1.1 200 OK\n\n"; err=<nil>
```

This PR changes the test to use the `netexec` container which is a simple http server written by golang and used in many of our networking e2e test. It should be more reliable.
Mark 1.5 since this is fixing a 1.5 release blocking issue. Mark P0 to match the original issue.

@dchen1107
2016-11-22 12:41:37 -08:00
Kris
1614b97725 Guard the ready replica checking by server version
This disables ready replica checking for 1.3 masters, but only from 1.4
or 1.5 clients. The old logic was broken anyway due to overlapping
labels with replica sets.
2016-11-22 11:16:15 -08:00
Random-Liu
e0cdeb4c2a Use netexec container in http lifecycle hook test. 2016-11-22 10:09:19 -08:00
Kubernetes Submit Queue
a9b58213b1 Merge pull request #37286 from jszczepkowski/ha-e2e-onerepl
Automatic merge from submit-queue

E2E tests cleanup: regexp for master replica in a separate function
2016-11-22 09:59:38 -08:00
Marcin Wielgus
11b9706a19 Revision handling in federated deployment controller 2016-11-22 16:20:15 +01:00
Jerzy Szczepkowski
69dc4b0fc5 E2E tests cleanup: moved generation of regexp for master replica to a separate function.
E2E tests cleanup: moved generation of regexp for master replica to a separate function.
2016-11-22 14:52:33 +01:00
Kubernetes Submit Queue
acb8a3f7d5 Merge pull request #36999 from jszczepkowski/ha-e2e-onerepl
Automatic merge from submit-queue

Fixed e2e tests for HA master.

Set of fixes that allows HA master e2e tests to pass for removal/addition master replicas.

The summary of changes:
- fixed host name in etcd certs,
- added cluster validation after kube-down,
- fixed the number of master replicas in cluster validation,
- made MULTIZONE=true required for HA master deployments, ensured we correctly handle MULTIZONE=true when user wants to create HA master but not kubelets in multiple zones,
- extended verification of master replicas in HA master e2e tests.
2016-11-22 05:24:59 -08:00
Kubernetes Submit Queue
1c3f8fa090 Merge pull request #36644 from kargakis/update-progress-test
Automatic merge from submit-queue

test: extend time for a condition to appear in status

Fixes https://github.com/kubernetes/kubernetes/issues/36574
2016-11-22 04:03:38 -08:00