Commit Graph

174 Commits (1fdb164c6a9df0513bc23d05d1b7a0a6aac3575a)

Author SHA1 Message Date
divyenpatel 8b041da0f9 adding e2e test for statefulsets for vsphere cloud provider
addressed Ohmichi's review comments

addressed janetkuo's review comments

Addressed 2nd Round of reviewes from janetkuo

addressed 3rd round of review comments from janetkuo

addressedd foxish and janetkuo's review comments
2017-10-18 17:33:33 -07:00
Kubernetes Submit Queue 6b8e769c8d Merge pull request #53872 from jeffvance/pd-cleanup
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

refactor pd.go for future tests

**What this PR does / why we need it**:
Refactored _test/e2e/storage/pd.go_ so that it will be easier to add new tests, which I plan on doing to address issue 52676
1. Condenses 8 `It` blocks into 3 table driven tests.
2. Adds several `By` descriptions and `Logf` messages.
3. provides more consistent formatting and messages.

**Special notes for your reviewer**:
The diff is large but mostly I've not altered any test. The one semantic change I made was to remove the call to verify a write to a PD when, in fact, nothing had been written yet. This was essentially a no-op since the verify code returned immediately if the passed-in map was empty (which it was since nothing had been written).

```release-note
NONE
```
cc @jingxu97 @copejon
2017-10-18 05:41:21 -07:00
jeff vance ed00f5250d review: improve disruptive node tests 2017-10-17 11:56:09 -07:00
jeff vance b97f838280 review: condense 2 Contexts into 1 2017-10-16 20:54:31 -07:00
jeff vance b5ca76bb4f review: condense 2 more Its into 1 2017-10-16 15:49:14 -07:00
jeff vance 7229f634ab review comments: some refactoring in testPDPod() and simplified Logf() 2017-10-16 12:53:15 -07:00
jeff vance 6596c94d54 refactor pd.go for future tests 2017-10-16 12:53:15 -07:00
Balu Dontu dfc6fd5f75 E2E test cases for Invalid user inputs - disksize, datastore, fstype 2017-10-16 11:42:05 -07:00
Jeff Grafton aee5f457db update BUILD files 2017-10-15 18:18:13 -07:00
Kubernetes Submit Queue ef841cc997 Merge pull request #53507 from vmware/cluster_ds_test
Automatic merge from submit-queue (batch tested with PRs 53507, 53772, 52903, 53543). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Adding e2e tests to verify vsphere volume lifecycle on a clustered datastore

**What this PR does / why we need it**:
This PR introduces tests for volume provisioning on a clustered datastore. It does so in three ways

1. Static provisioning (create vsphere volume and then create a pod with it)
2. Dynamic provisioning (specify clustered datastore in storage class parameters)
3. Dynamic provisioning with spbm policy (specify storage policy name in storage class parameters. This policy is a tag based policy and tagged to a clustered datastore)


**Which issue this PR fixes** : 
fixes vmware#278

**Special notes for your reviewer**:
Set env as per following example due to the need mentioned in description
```
export CLUSTER_DATASTORE="dscl1/sharedVmfs-1"
export VSPHERE_SPBM_POLICY_DS_CLUSTER="gold_cluster"
```
Internally reviewed by VMware reviewers @divyenpatel @BaluDontu @tusharnt
**Release note**:
```
None
```
2017-10-13 13:53:13 -07:00
Kubernetes Submit Queue 67e9add546 Merge pull request #53624 from msau42/local-e2e
Automatic merge from submit-queue (batch tested with PRs 53668, 53624, 52639, 53581, 51215). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Local e2e test fixes

**What this PR does / why we need it**:
1. Remove tests using TestContainerOutput because they don't wait for unmount
2. Fix scheduling error test to handle updated event msgs.

@kubernetes/sig-storage-pr-reviews 

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

**Release note**:

NONE
2017-10-11 17:00:00 -07:00
pshahzeb e71d38aead Tests to verify volume provisioning on a clustered datastore 2017-10-11 15:31:35 -07:00
Hemant Kumar 6f0c98bed8 Fix flake for volume detach metrics 2017-10-11 09:45:06 -04:00
Michelle Au 697e78565c Update search string for failed scheduling 2017-10-09 16:10:31 -07:00
Michelle Au ce19dda57a Remove local PV tests using TestContainerOutput because it doesn't wait for unmount 2017-10-09 09:50:59 -07:00
Balu Dontu f15aa051cd Verify clean up of stale VM's for vSphere dynamic provisioning 2017-10-03 16:24:46 -07:00
Vaibhav Kamra efdae2060f Address review comments 2017-09-27 19:36:04 -07:00
Vaibhav Kamra c0d9bdaf5e Improve PVC ref volume metric test robustness
This test has been flaking. The current working theory is that
volume stats collection didn't run in time to grab the metrics
from the newly created pod.

Made the following changes:
 - Added more logs to help debug future failures
 - Poll metrics a few additional times before failing the test
2017-09-27 17:58:34 -07:00
Kubernetes Submit Queue 2456fcc60c Merge pull request #53064 from msau42/allow-kubelet-metrics
Automatic merge from submit-queue (batch tested with PRs 52990, 53064, 52686, 52221, 53069). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Allow kubelet metrics tests to run on gke

**What this PR does / why we need it**:
On GKE, you can still access kubelet metrics, so allow the kubelet metrics test.

**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**:

NONE
2017-09-26 23:12:24 -07:00
Kubernetes Submit Queue f174776e43 Merge pull request #51648 from sbezverk/e2e_additional_tests
Automatic merge from submit-queue (batch tested with PRs 51648, 53030, 53009). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>..

e2e additional tests for local volume
2017-09-26 12:32:08 -07:00
Michelle Au 27eab0c97f Allow kubelet metrics tests to run on gke 2017-09-26 10:00:12 -07:00
Kubernetes Submit Queue b188868fd9 Merge pull request #53026 from msau42/e2e-approver
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>..

Add msau42 to storage e2e approvers

/sig storage
/release-note-none
2017-09-25 17:35:23 -07:00
Michelle Au af22f9f9e3 Add msau42 to storage e2e approvers 2017-09-25 16:28:55 -07:00
Serguei Bezverkhi f3127fe25c e2e additional tests for local volume
Closes #51418
2017-09-25 16:30:37 -04:00
Kubernetes Submit Queue c2a781428d Merge pull request #52574 from vmware/fix-kubelet-restart-tests
Automatic merge from submit-queue (batch tested with PRs 52469, 52574, 52330, 52689, 52829). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>..

Fixing E2E Test - After restarting kubelet test expects node's status to be NotReady

**What this PR does / why we need it**:
This PR is fixing the e2e tests involves restarting the kubelets. After the kubelet is restarted, test expect the desired state to be NotReady.

After restarting the kubelet we should wait for some time and then check nodes status to be Ready.
Node should not be checked for NotReady state, after restarting kubelet.

**Which issue this PR fixes**
fixes # https://github.com/vmware/kubernetes/issues/285

**Special notes for your reviewer**:

@BaluDontu @rohitjogvmw @tusharnt

Test logs before fix
-----
STEP: Restarting kubelet
Sep 15 11:26:32.768: INFO: Attempting sudo systemctl restart kubelet
Sep 15 11:26:33.001: INFO: ssh root@10.162.22.205:22: command: sudo systemctl restart kubelet
Sep 15 11:26:33.001: INFO: ssh root@10.162.22.205:22: stdout: ""
Sep 15 11:26:33.001: INFO: ssh root@10.162.22.205:22: stderr: ""
Sep 15 11:26:33.001: INFO: ssh root@10.162.22.205:22: exit code: 0
Sep 15 11:26:33.002: INFO: Waiting up to 1m0s for node kubernetes-node2 condition Ready to be false
Sep 15 11:26:33.012: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:35.023: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:37.032: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:39.041: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:41.051: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:43.061: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:45.070: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:47.080: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:49.093: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:51.105: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:53.117: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:55.128: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:57.140: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:26:59.151: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:01.158: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:03.167: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:05.180: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:07.188: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:09.210: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:11.221: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:13.231: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:15.240: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:17.249: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:19.263: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:21.272: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:23.283: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:25.309: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:27.317: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:29.327: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:31.342: INFO: Condition Ready of node kubernetes-node2 is true instead of false. Reason: KubeletReady, message: kubelet is posting ready status
Sep 15 11:27:33.343: INFO: Node kubernetes-node2 didn't reach desired Ready condition status (false) within 1m0s
Sep 15 11:27:33.343: INFO: Node kubernetes-node2 failed to enter NotReady state
[AfterEach] [sig-storage] PersistentVolumes:vsphere


Test logs after fix
-----
STEP: Restarting kubelet
Sep 18 15:40:49.066: INFO: Checking if sudo command is present
Sep 18 15:40:49.342: INFO: Checking if systemctl command is present
Sep 18 15:40:49.573: INFO: Attempting `sudo systemctl status kubelet | grep 'Main PID'`
Sep 18 15:40:49.733: INFO: ssh root@10.162.16.97:22: command:   sudo systemctl status kubelet | grep 'Main PID'
Sep 18 15:40:49.733: INFO: ssh root@10.162.16.97:22: stdout:    " Main PID: 19715 (docker)\n"
Sep 18 15:40:49.733: INFO: ssh root@10.162.16.97:22: stderr:    ""
Sep 18 15:40:49.733: INFO: ssh root@10.162.16.97:22: exit code: 0
Sep 18 15:40:49.733: INFO: Attempting `sudo systemctl restart kubelet`
Sep 18 15:40:49.986: INFO: ssh root@10.162.16.97:22: command:   sudo systemctl restart kubelet
Sep 18 15:40:49.986: INFO: ssh root@10.162.16.97:22: stdout:    ""
Sep 18 15:40:49.986: INFO: ssh root@10.162.16.97:22: stderr:    ""
Sep 18 15:40:49.986: INFO: ssh root@10.162.16.97:22: exit code: 0
Sep 18 15:40:49.988: INFO: Attempting `sudo systemctl status kubelet | grep 'Main PID'`
Sep 18 15:40:50.158: INFO: ssh root@10.162.16.97:22: command:   sudo systemctl status kubelet | grep 'Main PID'
Sep 18 15:40:50.158: INFO: ssh root@10.162.16.97:22: stdout:    " Main PID: 25021 (docker)\n"
Sep 18 15:40:50.158: INFO: ssh root@10.162.16.97:22: stderr:    ""
Sep 18 15:40:50.158: INFO: ssh root@10.162.16.97:22: exit code: 0
Sep 18 15:40:50.158: INFO: Noticed that kubelet PID is changed. Waiting for 30 Seconds for Kubelet to come back
Sep 18 15:41:20.159: INFO: Waiting up to 1m0s for node kubernetes-node4 condition Ready to be true
STEP: Testing that written file is accessible.
Sep 18 15:41:20.191: INFO: Running '/Users/divyenp/github/vmware/kubernetes/_output/dockerized/bin/darwin/amd64/kubectl --server=https://10.162.0.45 --kubeconfig=/Users/divyenp/.kube/config exec --namespace=e2e-tests-pv-9j8j0 pvc-tester-3t9ds -- /bin/sh -c cat /mnt/_SUCCESS'
Sep 18 15:41:20.855: INFO: stderr: ""
Sep 18 15:41:20.855: INFO: 
Sep 18 15:41:20.855: INFO: Volume mount detected on pod pvc-tester-3t9ds and written file /mnt/_SUCCESS is readable post-restart.



**Release note**:

```release-note
NONE
```
2017-09-23 21:52:49 -07:00
Kubernetes Submit Queue 7e7bcabe17 Merge pull request #52355 from davidz627/e2e_nil
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>..

E2E test to make sure controller does not crash because of nil volume spec

Fixes #49521

Tests fix of issue referenced in #49418
2017-09-23 15:25:07 -07:00
Kubernetes Submit Queue 37780d1c67 Merge pull request #51809 from davidz627/gci_api_test
Automatic merge from submit-queue (batch tested with PRs 52109, 52235, 51809, 52161, 50080). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>..

Updated pd.go tests to use GCE API instead of GCloud Commands

Fixes #49796
2017-09-23 10:26:49 -07:00
Hemant Kumar 381e334d87 Fix volume metric flake
Make sure we only run this test in environments
that support it.
2017-09-22 16:30:11 -04:00
Vaibhav Kamra b3ced98aa5 Address review comment
Removed defer, removed error slice
2017-09-21 14:38:13 -07:00
Vaibhav Kamra 41dabd7918 Address review comments 2017-09-21 13:54:40 -07:00
Vaibhav Kamra 1d6a701e76 Add e2e test to verify PVC metrics
Adds an e2e test for kubernetes/features#363
2017-09-21 01:10:22 -07:00
Kubernetes Submit Queue 939ae0a931 Merge pull request #52819 from verult/provisioner-e2e-fix
Automatic merge from submit-queue (batch tested with PRs 48406, 52819). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>..

Fixed nil dereference in dynamic provisioning e2e tests

**What this PR does / why we need it**: Fixed nil dereference in dynamic provisioning e2e tests.

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

**Release note**:

```release-note-none
NONE
```
/sig storage
/assign @saad-ali 
/cc @wongma7 
/release-note-none
2017-09-20 21:30:35 -07:00
Cheng Xing fbeb07aeac Fixed nil dereference in dynamic provisioning e2e tests 2017-09-20 16:08:23 -07:00
Hemant Kumar 6d4578ad57 Add e2e test for volume metrics
Adding e2e test for volume metrics. These tests need to be run
2017-09-20 18:23:05 -04:00
Matthew Wong a836cc35ba Add mount options e2e test 2017-09-19 20:47:05 -04:00
divyenpatel 544c6c18b3 Fixing kubelet restart
added code to check if Pid is getting changed upon kubelet restart

adding 30 seconds wait time after restarting kubelet
2017-09-18 15:46:41 -07:00
David Zhu 7e10741f94 E2E test to make sure controller does not crash because of nil volume spec. 2017-09-13 17:01:24 -07:00
David Zhu d33274ce64 Updated pd.go tests to use GCE API instead of GCloud Commands 2017-09-13 11:55:18 -07:00
Matthew Wong 69b51a685a Add e2e test for storageclass.reclaimpolicy 2017-09-13 10:59:42 -04:00
Kubernetes Submit Queue c31eb54cca Merge pull request #51833 from verult/VolumeIoOom
Automatic merge from submit-queue (batch tested with PRs 51833, 51936)

Changed volume IO e2e test to verify file hash instead of content.

**What this PR does / why we need it**: The existing way of verifying file content takes too much memory, causing processes to be OOM killed.

**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/51717

**Release note**:

```release-note
NONE
```
/sig storage
/release-note-none
/assign @jeffvance @rootfs 
/cc @msau42
2017-09-05 02:14:56 -07:00
Kubernetes Submit Queue f07279ada2 Merge pull request #51474 from verult/ProberTest
Automatic merge from submit-queue (batch tested with PRs 51805, 51725, 50925, 51474, 51638)

Flexvolume dynamic plugin discovery: Prober unit tests and basic e2e test.

**What this PR does / why we need it**: Tests for changes introduced in PR #50031 .
As part of the prober unit test, I mocked filesystem, filesystem watch, and Flexvolume plugin initialization.
Moved the filesystem event goroutine to watcher implementation.

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

**Special notes for your reviewer**:
First commit contains added functionality of the mock filesystem.
Second commit is the refactor for moving mock filesystem into a common util directory.
Third commit is the unit and e2e tests.

**Release note**:

```release-note
NONE
```
/release-note-none
/sig storage
/assign @saad-ali @liggitt 
/cc @mtaufen @chakri-nelluri @wongma7
2017-09-03 11:10:05 -07:00
Cheng Xing ff2ad08482 Changed volume IO e2e test to verify file hash instead of content. 2017-09-01 15:23:53 -07:00
Manjunath A Kumatagi ee4d54c70c Port e2e tests for multi architecture 2017-09-01 05:40:52 +05:30
Manjunath A Kumatagi 22c3a590d1 Fix bazel 2017-09-01 05:39:00 +05:30
Cheng Xing 52a77aaccd Added basic Flexvolume dynamic plugin discovery e2e test; added Flexvolume prober unit tests. 2017-08-31 16:50:02 -07:00
Serguei Bezverkhi d904e52570 Adding e2e SELinux test for local storage
Also changing provisioner bootstrapper frpm Pod to Job
2017-08-28 19:12:17 -04:00
Kubernetes Submit Queue bc2f049067 Merge pull request #50332 from ianchakeres/local-e2e-mntpnt
Automatic merge from submit-queue (batch tested with PRs 50670, 50332)

e2e test for local storage mount point

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

We discovered that kubernetes can treat local directories and actual mountpoints differently. For example, https://github.com/kubernetes/kubernetes/issues/48331. The current local storage e2e tests use directories.

This PR introduces a test that creates a tmpfs and mounts it, and runs one of the local storage e2e tests.

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

**Special notes for your reviewer**:

I cherrypicked PR https://github.com/kubernetes/kubernetes/pull/50177, since local storage e2e tests are broken in master on 2017-08-08 due to "no such host" error. This PR replaces NodeExec with SSH commands.

You can run the tests using the following commands:
``` 
$ NUM_NODES=1 KUBE_FEATURE_GATES="PersistentLocalVolumes=true" go run hack/e2e.go -- -v --up
$ go run hack/e2e.go -- -v --test --test_args="--ginkgo.focus=\[Feature:LocalPersistentVolumes\]"
```

Here are the summary of results from my test run:
```
Ran 9 of 651 Specs in 387.905 seconds
SUCCESS! -- 9 Passed | 0 Failed | 0 Pending | 642 Skipped PASS

Ginkgo ran 1 suite in 6m29.369318483s
Test Suite Passed
2017/08/08 11:54:01 util.go:133: Step './hack/ginkgo-e2e.sh --ginkgo.focus=\[Feature:LocalPersistentVolumes\]' finished in 6m32.077462612s
```

**Release note**:
`NONE`
2017-08-16 01:38:08 -07:00
Ian Chakeres f082908ed2 Added logic and tests for creating and using a tmpfs volume in localPV e2e tests
LocalVolumeType tmpfs added
Added checks to ensure tha volume created during setup contains expected testFileContent
Refactored tests out to avoid code duplication
Two different tests are performed with tmpfs:
-serial write and read in two different pods
-write and read in two different pods mounted at the same time

Fixed local storage test failures by integrating https://github.com/kubernetes/kubernetes/pull/50177
Switched NodeExec to SSH
2017-08-14 20:30:32 -07:00
Kevin f76ca1fb16 update clientset.Core() to clientset.CoreV1() in test 2017-08-14 16:53:55 +08:00
Jeff Grafton a7f49c906d Use buildozer to delete licenses() rules except under third_party/ 2017-08-11 09:32:39 -07:00
Jeff Grafton 33276f06be Use buildozer to remove deprecated automanaged tags 2017-08-11 09:31:50 -07:00
Kubernetes Submit Queue 85e2e5dd9a Merge pull request #49642 from liggitt/rbac-v1
Automatic merge from submit-queue (batch tested with PRs 49642, 50335, 50390, 49283, 46582)

Add rbac.authorization.k8s.io/v1

xref https://github.com/kubernetes/features/issues/2

Promotes the rbac.authorization.k8s.io/v1beta1 API to v1 with no changes

```release-note
The `rbac.authorization.k8s.io/v1beta1` API has been promoted to `rbac.authorization.k8s.io/v1` with no changes.
The `rbac.authorization.k8s.io/v1alpha1` version is deprecated and will be removed in a future release.
```
2017-08-10 00:53:17 -07:00
Kubernetes Submit Queue a881405bd4 Merge pull request #49164 from vmware/vSphereCloudProviderCodeRefactoring
Automatic merge from submit-queue

VSphere cloud provider code refactoring

The current PR tracks the vSphere Cloud Provider code refactoring which includes the following changes.
- VCLib Package - A framework used by vSphere cloud provider for managing the vSphere entities. VCLib package mainly does the following:
  - Volume management on datastore (Create/Delete)
  - Volume management on Virtual Machines (Attach/Detach)
  - Storage Policy Management
- vSphere Cloud Provider changes to implement the cloud provider interfaces by calling into VCLib package.
- Modifications to e2e tests to accomodate the latest design changes.

@divyenpatel @rohitjogvmw @luomiao 

```release-note
vSphere cloud provider: vSphere cloud provider code refactoring
```
2017-08-09 18:18:58 -07:00
Jordan Liggitt dd7be70a4a
Add rbac.authorization.k8s.io/v1 2017-08-09 17:04:54 -04:00
Kubernetes Submit Queue 35cba5263a Merge pull request #50177 from msau42/local-e2e
Automatic merge from submit-queue

Fix local storage test failures

**What this PR does / why we need it**:
Fixed a few issues:
- CI environment on GCE cannot resolve node names, need to use IPs.  Use a different SSH wrapper that will get the IPs from the node object.
- Use hostdir instead of containerdir now that commands are executed directly on the host, instead of through a container.
- Get the PVC object again after it is bound so that it has the PV name.

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

**Release note**:
NONE

/release-note-none
/sig storage
2017-08-09 00:52:41 -07:00
Maciej Borsz 6d789ee640 Fix storage tests for multizone test configuration. 2017-08-07 12:15:14 +02:00
Kubernetes Submit Queue 40b4f77ab4 Merge pull request #50054 from msau42/e2e-cleanup
Automatic merge from submit-queue (batch tested with PRs 48532, 50054, 50082)

Remove [k8s.io] tag and redundant [sig-storage] tags from volume tests

**What this PR does / why we need it**:
Removes redundant tags from storage e2e test names

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

**Release note**:
/release-note-none
2017-08-05 05:14:01 -07:00
Kubernetes Submit Queue ed481a073e Merge pull request #50133 from xiangpengzhao/update-owner
Automatic merge from submit-queue

Update OWNERS to correct members' handles

**What this PR does / why we need it**:
Fix some typos of members' handles as per https://github.com/kubernetes/kubernetes/issues/50048#issuecomment-319831957.

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

**Special notes for your reviewer**:
/cc @madhusudancs @sebgoa @liggitt @saad-ali

**Release note**:

```release-note
NONE
```
2017-08-04 18:13:31 -07:00
Michelle Au 7778b0dfee Fix local storage test failures 2017-08-04 16:19:45 -07:00
Kubernetes Submit Queue b070227e89 Merge pull request #48366 from wongma7/flex-e2e
Automatic merge from submit-queue (batch tested with PRs 50119, 48366, 47181, 41611, 49547)

Add basic install and mount flexvolumes e2e tests

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

These two tests install a skeleton "dummy" flex driver, attachable and non-attachable respectively, then test that a pod can successfully use the flex driver. They are labeled disruptive because kubelet and controller-manager get restarted as part of the flex install. IMO it's important to keep this install procedure as part of the test to isolate any bugs with the startup plugin probe code.

There is a bit of an ugly dependency on cluster/gce/config-test.sh because --flex-volume-plugin-dir must be set to a dir that's readable from controller-manager container and writable by the flex e2e test. The default path is not writable on GCE masters with read-only root so I picked a location that looks okay.

In the "dummy" drivers I trick kubelet into thinking there is a mount point by doing "mount -t tmpfs none ${MNTPATH} >/dev/null 2>&1", hope that is okay.

I have only tested on GCE and theoretically they may work on AWS but I don't think there is a need to test on multiple cloudproviders.

-->
```release-note
NONE
```
2017-08-04 14:29:34 -07:00
Matthew Wong 55a417e84f Add basic install and mount flexvolumes e2e tests 2017-08-04 10:39:24 -04:00
xiangpengzhao f003ee9b29 Update OWNERS to correct members' handles. 2017-08-04 15:00:15 +08:00
Deyuan Deng a8b195828c Fix pointer bug in local volume e2e test 2017-08-03 11:10:01 +08:00
Michelle Au 1b0402af0f Remove [k8s.io] tag and redundant [sig-storage] tags from tests 2017-08-02 19:12:54 -07:00
Kubernetes Submit Queue b8760758f8 Merge pull request #49507 from msau42/ubuntu-e2e
Automatic merge from submit-queue

Add ubuntu to gluster and nfs tests

**What this PR does / why we need it**:
Enable gluster and nfs tests for ubuntu distro

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


**Special notes for your reviewer**:

**Release note**:

/release-note-none
/sig storage
2017-08-02 14:31:20 -07:00
Balu Dontu 3080bd8790 e2e test changes 2017-08-02 08:06:09 -07:00
Kubernetes Submit Queue bcb78ad1ce Merge pull request #48860 from ddysher/local-volume-e2e
Automatic merge from submit-queue (batch tested with PRs 49898, 49897, 49919, 48860, 49491)

Add basic local volume provisioner e2e tests

**What this PR does / why we need it**:
Adds e2e tests to test local volume provisioner.

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

**Special notes for your reviewer**:
- bring up local volume provisioner using bootstrapper
- have provisioner create a volume by creating a directory under discovery path.  
- check persistent volume is created
- make a claim on the PV, write some data then delete the claim. Verify volume is cleaned up.

**Release note**:

```release-note
```

@ianchakeres @msau42
2017-08-01 17:57:18 -07:00
Deyuan Deng 59c54805ae Add basic local volume provisioner e2e tests 2017-08-01 09:41:12 +08:00
Michelle Au 20c7040c21 Add ext4 and xfs tests to GCE PD basic mount tests 2017-07-25 14:06:28 -07:00
Michelle Au 1591ef9895 Add ubuntu to gluster and nfs tests 2017-07-24 11:00:09 -07:00
Kubernetes Submit Queue 3d94338e44 Merge pull request #49163 from msau42/e2e-cleanup
Automatic merge from submit-queue (batch tested with PRs 49328, 49285, 49307, 49127, 49163)

Cleanup storage e2e test names

**What this PR does / why we need it**:
Some test names had redundant [sig-storage] tags.  Also, some tests still had [Volume] tag.  This PR removes those tags.

**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**:

```release-note
NONE
```
/release-note-none
/sig storage
2017-07-21 03:00:23 -07:00
saadali c861d088ac Add project to pd delete node gcloud command 2017-07-20 15:54:37 -07:00
Michelle Au e53ba82702 Cleanup storage e2e test names by removing redundant [sig-storage] tags and [Volume] tags 2017-07-20 11:11:40 -07:00
Kubernetes Submit Queue 76c474eb99 Merge pull request #46821 from jeffvance/e2e-io
Automatic merge from submit-queue (batch tested with PRs 47509, 46821, 45319, 49121, 49125)

volume i/o tests for storage plugins

**What this PR does / why we need it**:
Addresses issues [25268](https://github.com/kubernetes/kubernetes/issues/25268) and [28367](https://github.com/kubernetes/kubernetes/issues/28367), though it may be weak re. the streaming i/o issue. @matchstick 

**Special notes for your reviewer**:
This is a new file. Plugins other than NFS, GlusterFS, iSCSI, and Ceph-RBD code will need to be supported in a separate PR.

```release-note
NONE
```
2017-07-19 16:16:26 -07:00
saadali 4804e320e4 Add more logging to PD node delete test 2017-07-19 08:32:46 -07:00
jeff vance a113d8ac41 volume i/o tests for storage plugins 2017-07-18 17:59:15 -07:00
Jacob Simpson 8bcbbd4d08 Migrate api.Registry to testapi.Groups in tests. 2017-07-17 15:05:38 -07:00
Jacob Simpson 29c1b81d4c Scripted migration from clientset_generated to client-go. 2017-07-17 15:05:37 -07:00
Ian Chakeres 791970025e Added localPV e2e tests with two pods and refactored existing tests 2017-07-13 08:53:57 -04:00
Ryan Hitchman a79ab6898b Move empty_dir_wrapper.go into the storage directory. 2017-07-12 11:14:13 -07:00
Ryan Hitchman cb0f5b8693 Change [Volume] tags to [sig-storage]. 2017-07-12 11:11:16 -07:00
Ryan Hitchman 678ca905d6 Remove volume tags. 2017-07-12 11:11:16 -07:00
Ryan Hitchman d4dc49ba90 Make storage e2e tests start with [sig-storage] instead of [k8s.io].
This makes understanding sig ownership from a test name very easy for
tools and humans.
2017-07-12 11:11:16 -07:00
jianglingxia 2d55962c85 squash the commits into one 2017-07-11 16:59:38 +08:00
Cheng Xing 78d111b75f Ensures node becomes schedulable at the end of tests that delete nodes 2017-06-26 18:41:14 -07:00
Cheng Xing 35efde9e6d Extending timeout waiting for delete node to become ready before the test ends 2017-06-23 18:56:34 -07:00
Chao Xu 60604f8818 run hack/update-all 2017-06-22 11:31:03 -07:00
Chao Xu cde4772928 run ./root-rewrite-all-other-apis.sh, then run make all, pkg/... compiles 2017-06-22 11:30:52 -07:00
Chao Xu f4989a45a5 run root-rewrite-v1-..., compile 2017-06-22 10:25:57 -07:00
mbohlool c91a12d205 Remove all references to types.UnixUserID and types.UnixGroupID 2017-06-21 04:09:07 -07:00
Joe Finney dcb5811d50 Move slow PV test to slow suite. 2017-06-14 14:08:56 -07:00
Kubernetes Submit Queue b77ed78688 Merge pull request #44358 from wongma7/nfs-bump
Automatic merge from submit-queue

Bump external provisioner image to smaller version

The image is roughly half as big so this should improve speed/flakiness maybe
-->
```release-note
NONE
```
2017-06-08 04:38:27 -07:00
Kubernetes Submit Queue d3146080b4 Merge pull request #46804 from verult/gce-pdflake
Automatic merge from submit-queue (batch tested with PRs 45871, 46498, 46729, 46144, 46804)

PD e2e test: Ready node check now uses the most up-to-date node count.

Follow-up to PR #46746 

<!--  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`.
2017-06-05 03:06:29 -07:00
Kubernetes Submit Queue 348bf1e032 Merge pull request #46627 from deads2k/api-12-labels
Automatic merge from submit-queue (batch tested with PRs 46239, 46627, 46346, 46388, 46524)

move labels to components which own the APIs

During the apimachinery split in 1.6, we accidentally moved several label APIs into apimachinery.  They don't belong there, since the individual APIs are not general machinery concerns, but instead are the concern of particular components: most commonly the kubelet.  This pull moves the labels into their owning components and out of API machinery.

@kubernetes/sig-api-machinery-misc @kubernetes/api-reviewers @kubernetes/api-approvers 
@derekwaynecarr  since most of these are related to the kubelet
2017-06-02 23:37:38 -07:00
Cheng Xing 6a073374f8 PD e2e test: Ready node check now uses the most up-to-date node count. 2017-06-01 14:03:02 -07:00
Cheng Xing 5c2cba391d Added API node ready check after PD test deleting a GCE instance.
- Need to ensure that all nodes are ready, i.e. back to the state before the test.
2017-05-31 18:38:24 -07:00
deads2k 954eb3ceb9 move labels to components which own the APIs 2017-05-31 10:32:06 -04:00
Kubernetes Submit Queue 0aad9d30e3 Merge pull request #44897 from msau42/local-storage-plugin
Automatic merge from submit-queue (batch tested with PRs 46076, 43879, 44897, 46556, 46654)

Local storage plugin

**What this PR does / why we need it**:
Volume plugin implementation for local persistent volumes.  Scheduler predicate will direct already-bound PVCs to the node that the local PV is at.  PVC binding still happens independently.

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

**Release note**:

```
Alpha feature: Local volume plugin allows local directories to be created and consumed as a Persistent Volume.  These volumes have node affinity and pods will only be scheduled to the node that the volume is at.
```
2017-05-30 23:20:02 -07:00
Michelle Au f385dfcb3b Address review comments 2017-05-26 11:48:31 -07:00
Andy Goldstein ab76f7320a Fix incorrect printf format 2017-05-26 11:36:52 -04:00