Commit Graph

718 Commits (04b943ce382531d572f6f70da7b1973aec1d4b09)

Author SHA1 Message Date
k8s-ci-robot 0320fd4d9f
Merge pull request #70869 from aniket-s-kulkarni/flexvolume-resize-implementation
fix for test failure #70774
2018-11-09 16:23:04 -08:00
Masaki Kimura f98b87cac1 Make csi alpha failing test skip
Fixes: #70760
2018-11-09 20:42:55 +00:00
Deep Debroy 923df464fb Add multi PVC versions of tests for delayed binding
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2018-11-09 12:17:31 -08:00
Aniket Kulkarni 62770789d3 fix for test failure #70774 2018-11-09 12:15:16 -05:00
k8s-ci-robot f212b9db23
Merge pull request #70598 from dims/switch-from-sigs.k8s.io/yaml-to-ghodss/yaml
Switch to sigs.k8s.io/yaml from ghodss/yaml
2018-11-08 10:57:36 -08:00
k8s-ci-robot 3c10143967
Merge pull request #60195 from humblec/glusterfs-pvspec-3
Refactor GlusterFS PV spec.
2018-11-08 00:24:39 -08:00
Masaki Kimura d33211dc44 Fix test driver's unique name consistent
Fixes: #70760
2018-11-07 22:24:48 +00:00
k8s-ci-robot 6f305d925f
Merge pull request #68025 from mkimuram/issue/68024
Make csi drivers and in-tree drivers share e2e tests
2018-11-07 12:52:47 -08:00
k8s-ci-robot ebcc2c7d26
Merge pull request #70667 from aniket-s-kulkarni/flexvolume-resize-implementation
adding test case for flex volume resize on pod restart
2018-11-07 11:36:32 -08:00
Davanum Srinivas 43f523d405
Switch to sigs.k8s.io/yaml from ghodss/yaml
Change-Id: Ic72b5131bf441d159012d67a6a3d87088d0e6d31
2018-11-07 13:17:32 -05:00
Masaki Kimura b89b367247 Make csi drivers and in-tree drivers share e2e tests 2018-11-07 15:42:58 +00:00
k8s-ci-robot 7fe59165b6
Merge pull request #70193 from saad-ali/csiCRDAddon
Register CSI CRDs as addon
2018-11-06 23:55:56 -08:00
k8s-ci-robot e05659cf8e
Merge pull request #70710 from msau42/remove-subpath-ro-test
Remove subpath ro test
2018-11-06 20:21:44 -08:00
saad-ali a679486a5e Register CSI CRDs as addon 2018-11-06 10:58:09 -08:00
Michelle Au 75459fc3de remove subpath readonly test for new directories 2018-11-06 10:39:36 -08:00
Humble Chirammal bdb051c72d Refactor GlusterFS PV spec.
This patch introduces glusterfsPersistentVolumeSource addition
to glusterfsVolumeSource. All fields remains same as glusterfsVolumeSource
with an addition of a new field
called `EndpointsNamespace` to define namespace of endpoint in the
spec.

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2018-11-06 15:51:01 +05:30
Aniket Kulkarni 624f2f5136 adding test case for flex volume resize on pod restart 2018-11-05 18:15:05 -05:00
k8s-ci-robot 5fdad5c19f
Merge pull request #68771 from liyongxin/master
typo fix from utilites to utilities
2018-11-03 16:50:28 -07:00
Michelle Au 45ee18a1f1 Update pd csi e2e yamls with latest driver 2018-11-02 13:35:39 -07:00
k8s-ci-robot 6813ebb568
Merge pull request #67851 from aniket-s-kulkarni/flexvolume-resize-implementation
Flexvolume resize implementation
2018-11-02 10:47:01 -07:00
xichengliudui 8477389e7c Fix some types
Fix some typos
2018-10-31 04:05:25 -04:00
Patrick Ohly 1449353067 e2e: live streaming of pod events and stdout for CSI volume tests
Debugging the CSI driver tests depends a lot on the output of the CSI
sidecar containers and the CSI driver, but that information was not
captured automatically and thus unavailable after a test run. This is
particularly bad when running in a remote CI system, but also manually
watching the cluster during a test was cumbersome.

Now pod events and log messages get copied to the test's output at the
time that they happen (when running without report directory) or get
written to individual log files (when running with report directory in
the CI).
2018-10-30 09:18:48 +01:00
Patrick Ohly 248df4ac58 e2e: update bazel BUILD files
Generated via hack/update-bazel.sh.
2018-10-27 00:39:44 +02:00
Patrick Ohly a56c518292 e2e CSI: bump all containers to v0.4.1 2018-10-27 00:39:44 +02:00
Patrick Ohly 38efff564c e2e: deploy from manifest files + enhance CSI volume output
Ensuring that CSI drivers get deployed for testing exactly as intended
was problematic because the original .yaml files had to be converted
into code. e2e/manifest helped a bit, but not enough:
- could not load all entities
- didn't handle loading .yaml files with multiple entities
- actually creating and deleting entities still had to be done in tests

The new framework utility code handles all of that, including the
tricky cleanup operation that tests got wrong (AfterEach does not get
called after test failures!).

In addition, it is ensuring that each test gets its own instance of the
entities.

The PSP role binding for hostpath is now necessary because we switch
from creating a pod directly to creation via the StatefulSet
controller, which runs with less privileges.

Without this, the hostpath test runs into these errors in the
kubernetes-e2e-gce job:

Oct 19 16:30:09.225: INFO: At 2018-10-19 16:25:07 +0000 UTC - event for csi-hostpath-attacher: {statefulset-controller } FailedCreate: create Pod csi-hostpath-attacher-0 in StatefulSet csi-hostpath-attacher failed error: pods "csi-hostpath-attacher-0" is forbidden: unable to validate against any pod security policy: []
Oct 19 16:30:09.225: INFO: At 2018-10-19 16:25:07 +0000 UTC - event for csi-hostpath-provisioner: {statefulset-controller } FailedCreate: create Pod csi-hostpath-provisioner-0 in StatefulSet csi-hostpath-provisioner failed error: pods "csi-hostpath-provisioner-0" is forbidden: unable to validate against any pod security policy: []
Oct 19 16:30:09.225: INFO: At 2018-10-19 16:25:07 +0000 UTC - event for csi-hostpathplugin: {daemonset-controller } FailedCreate: Error creating: pods "csi-hostpathplugin-" is forbidden: unable to validate against any pod security policy: []

The extra role binding is silently ignored on clusters which don't
have this particular role.
2018-10-26 22:07:34 +02:00
k8s-ci-robot 022c05c141
Merge pull request #70254 from msau42/add-out-of-tree-pd-tests
Add new driver config for testing PD CSI driver out of tree
2018-10-25 23:24:22 -07:00
Michelle Au 9acb8bca6d Add new driver config for testing PD CSI driver out of tree 2018-10-25 16:42:51 -07:00
Aniket Kulkarni 82f83a8f82 Updating build files after review comments 2018-10-25 14:49:01 -04:00
Antonio Murdaca fc80120a0f test/e2e/storage: use relatime for checking NFS options
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Signed-off-by: Antonio Murdaca <runcom@linux.com>
2018-10-25 20:44:33 +02:00
Antonio Murdaca ebdc25a80e test/e2e/storage: provide useful output if test fail
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Signed-off-by: Antonio Murdaca <runcom@linux.com>
2018-10-25 20:44:28 +02:00
Aniket Kulkarni 45aec048db Incorporating review comments 2018-10-25 14:29:01 -04:00
k8s-ci-robot 0df5462db6
Merge pull request #69700 from verult/repd-e2e-regionalcluster
Updated Regional PD failover test to use node taints instead of instance group deletion
2018-10-24 19:26:51 -07:00
Cheng Xing 8ee882a98a Updated Regional PD failover test to use node taints instead of instance group deletion 2018-10-24 13:22:39 -07:00
Aniket Kulkarni bfc0d45303 e2e tests for flex volume expand
mysterious build error
2018-10-24 15:31:24 -04:00
Aniket Kulkarni 75350d11e9 adding support for expanding in use persistent volumes for Flex 2018-10-24 15:31:16 -04:00
Masaki Kimura 6afcaccf7d Move the provisioning test for retain policy back to volume_provisioning.go
Provisioning test for retain policy requires each driver's backend volume
deletion logic. Without it, volume leakage happens. Move this test back
to volume_provisioning.go and test it only for gce, until general
backend volume deletion code for each driver becomes available.

Fixes: #70191
2018-10-24 19:21:28 +00:00
Masaki Kimura 4fcb36e205 Move minimum set of dynamic provisioning e2e test to testsuites 2018-10-22 16:04:43 +00:00
k8s-ci-robot 8b36038b41
Merge pull request #68483 from pohly/e2e-refactor-pr
e2e refactor
2018-10-19 12:32:01 -07:00
Jing Xu 9de354034b Make sure kubelet is restarted in the storage test
In some storage tests, kubelet is stopped first and the test check node
NotReady state. However, if it fails to have this state, kubelet could
not be restarted because the defer function is placed after the stop
kubelet command. This PR fixes this issue.
2018-10-17 14:19:04 -07:00
k8s-ci-robot d54e0fc0bc
Merge pull request #69670 from atlassian/simplify-rand-seed
Simplify rand seeding
2018-10-15 13:53:01 -07:00
k8s-ci-robot 9c5cf3ccf7
Merge pull request #69549 from tallclair/podevent-test
Fix WaitTimeoutForPodEvent logic
2018-10-12 19:13:52 -07:00
Tim Allclair 5214be3f16 Fix WaitTimeoutForPodEvent logic 2018-10-12 11:59:45 -07:00
k8s-ci-robot 632df63061
Merge pull request #68822 from pohly/csi-pod-creation
CSI E2E: retry csi-pod creation
2018-10-11 12:32:28 -07:00
Mikhail Mazurskiy f5e9c0473c
Remove unnecessary random re-seeding
Package k8s.io/apimachinery/pkg/util/rand seeds the random based on time
during the package initialization, so no need to re-seed it.
2018-10-11 22:02:01 +11:00
Mikhail Mazurskiy 3a243090a5
Simplify random seed initialization
There is no need to set the time zone as the result does not
depend on it
2018-10-11 21:01:15 +11:00
Patrick Ohly 97101a6a86 e2e: update bazel BUILD files
Generated via hack/update-bazel.sh.
2018-10-11 11:36:25 +02:00
Patrick Ohly 8b17db7e0c e2e: modular framework
Not all users of the E2E framework want to run cloud-provider specific
tests. By splitting out the code it becomes possible to decide in
a E2E test suite which providers are supported.

This is achieved in two ways:
- the framework calls certain functions through a provider
  interface instead of calling specific cloud provider functions
  directly
- tests that are cloud-provider specific directly import the
  new provider packages

The ingress test utilities are only needed by a few tests. Splitting
them out into a separate package makes the framework simpler for test
suites not using those tests.

Fixes: #66649
2018-10-11 11:16:11 +02:00
Kenichi Omichi 2e6a8deece Add debugging info in pv/pvc protection e2e tests
When facing an issue which is due to lack of PV/PVC Protection
finalizer on the e2e tests, the error message is just like

  Expected
      <bool>: false
  to be true

Actually we cannot understand what happened during the tests.
This adds more debugging info on the tests.
2018-10-09 21:15:45 +00:00
Patrick Ohly 8cde9c08f0 e2e/storage: decentralized settings
Tests shouldn't have to use the central context for their settings,
because conceptually tests and framework get developed independently.

This does not yet use the new framework/config utility code because
that code still needs to be reviewed.

Besides moving the flags, they also get renamed from the top-level
"--csiImage{Version|Registry}" to
"--storage.csi.image.{version|registry}". These flags were introduced
fairly recently and shouldn't be in use much, so now is a good time to
introduce a hierarchical naming for storage flags, in particular
because more flags will be added soon.
2018-10-05 14:24:35 +02:00
k8s-ci-robot 166490a473
Merge pull request #69103 from pohly/testfiles
E2E: handling extra files
2018-10-04 13:39:49 -07:00
k8s-ci-robot 16256296d2
Merge pull request #69353 from davidz627/fix/provisionerName
Update provisioner name and don't supply zone in GCE PD CSI test
2018-10-03 15:21:59 -07:00
k8s-ci-robot c635e19e59
Merge pull request #69349 from davidz627/fix/gcePDCSITest
Add PodSecurityPolicy Binding back to GCE PD CSI Test and make non-serial
2018-10-03 10:38:16 -07:00
k8s-ci-robot 2d67d782de
Merge pull request #69225 from gnufied/volume-limit-tidy-up
Enable volume limit feature by default
2018-10-02 17:03:32 -07:00
David Zhu fa41fa9acd Update provisioner name and don't supply zone in GCE PD CSI test 2018-10-02 16:52:14 -07:00
David Zhu fd18fc548d Remove redundant [Serial] tags and dont delete CRD's at the end of test 2018-10-02 16:01:38 -07:00
David Zhu e7af381538 Add Pod Security Policy back in to GCE PD Cluster Role 2018-10-02 14:42:14 -07:00
Hemant Kumar e38cfb61be Add a e2e test to check node limits 2018-10-02 13:59:05 -04:00
k8s-ci-robot a27adf1612
Merge pull request #69300 from mrunalp/subpath_test_wait_for_event
test: Wait for pod event to show up
2018-10-02 01:12:00 -07:00
Patrick Ohly 20c9549c10 e2e: update bazel BUILD files
Generated via hack/update-bazel.sh.
2018-10-02 08:31:03 +02:00
Patrick Ohly 212af1ac29 e2e: abstract access to additional files
The new test/e2e/framework/testfiles package makes it possible to
write tests that do not depend on a specific way of providing
additional test files at runtime. Such tests and the framework are
then more easily reused in other test suites.

In the test/e2e suite file access is enabled based on the existing
"repo-root" command line parameter and the built-in bindata. Tests
using the new API will first check for files under "repo-root" and
then fall back to the builtin data. This way, users of a test binary
can modify those files without having to rebuild the binary.

"repo-root" is still needed because at least some tests check for
additional files (secret.yaml, via ingress_utils.go) that are not part
of the upstream source code and thus may or may not be built into a
test binary.

Tests using bindata or repo-root directly get modified to use the new
API, or removed when they are obsolete: test/e2e/examples.go depended
on files that were removed in
https://github.com/kubernetes/kubernetes/pull/61246 and thus can no
longer be run in Kubernetes. Moving the tests to kubernetes/examples
is tracked in https://github.com/kubernetes/examples/issues/214.

The file removal did not break the automated E2E testing probably
because the tests are under the Feature:Example tag and thus not
enabled during normal CI runs.

Removing also the obsolete tests makes it simpler to rework the
"repo-root" setting because less code uses it.

Related-to: #66649 and #23987
2018-10-02 08:31:03 +02:00
Mrunal Patel c771de1e6b test: Wait for pod event to show up
We are seeing flakes where pod event isn't yet visible when
we check for it leading to test failure.

Signed-off-by: Mrunal Patel <mpatel@redhat.com>
2018-10-01 12:28:40 -07:00
Patrick Ohly 39d28d1af4 E2E CSI: bump versions of sidecar containers to 0.4.0
The 0.4.0 versions are what is getting released together with and for
Kubernetes 1.12.
2018-10-01 17:38:39 +02:00
k8s-ci-robot 860d3cb32c
Merge pull request #68887 from jsafrane/csi-roles
Add controller roles to CSI e2e tests
2018-10-01 08:18:36 -07:00
k8s-ci-robot 577e06e0b8
Merge pull request #69222 from SataQiu/fix-2018092805
fix typo
2018-10-01 04:40:34 -07:00
Jan Safranek 60f736ed3d Add controller roles to CSI e2e tests
External attacher + provisioner need extra role for leader election.
2018-10-01 10:31:31 +02:00
SataQiu 94a653f100 fix typo 2018-09-28 23:41:24 +08:00
Fabio Bertinatto 8894021b99 Fix flake in CSI plugin e2e test 2018-09-28 14:00:39 +02:00
k8s-ci-robot 3fe21e5433
Merge pull request #68922 from BenTheElder/version-staging
move pkg/util/version to staging
2018-09-26 22:59:42 -07:00
k8s-ci-robot 25b3ec6c62
Merge pull request #68908 from msau42/add-slow
Move storage tests that take longer than 2 minutes to slow suite
2018-09-26 22:59:23 -07:00
k8s-ci-robot 1e4edac012
Merge pull request #68886 from mgdevstack/master-emptydir-wrapper
Promote emptyDir wrapper volumes tests to Conformance
2018-09-26 20:37:47 -07:00
David Zhu f33f850ff1 Update GCE PD CSI Driver to run by default and automatically set up secrets with GCP Service Account Key 2018-09-26 10:10:48 -07:00
k8s-ci-robot 4278b75668
Merge pull request #68805 from davidz627/fix/storagePSP
Add privileged test pod security policy to local volume provisioner test service account
2018-09-26 04:57:27 -07:00
Benjamin Elder 8b56eb8588 hack/update-gofmt.sh 2018-09-24 12:21:29 -07:00
Benjamin Elder f828c6f662 hack/update-bazel.sh 2018-09-24 12:03:24 -07:00
Benjamin Elder 088cf3c37b find & replace version import 2018-09-24 12:03:24 -07:00
Mayank Gaikwad b9942796db Promote emptyDir wrapper volume tests to conformance 2018-09-24 15:39:20 +05:30
Anusha Ragunathan b13d35caf7 Fix Panic in PersistentVolumes:vsphere
Bootstrap initializes the necessary vSphere objects before the tests are
run. A call to Bootstrap was missing in persistent_volumes-vsphere.go's
BeforeEach. This results in Panic while running e2e tests for 'vsphere'
provider with a stack trace like this:

  	/usr/local/go/src/runtime/panic.go:502 +0x229
  github.com/docker/kube-e2e-image/vendor/k8s.io/kubernetes/test/e2e/storage/vsphere.glob..func1.1()
  	/go/src/github.com/docker/kube-e2e-image/vendor/k8s.io/kubernetes/test/e2e/storage/vsphere/persistent_volumes-vsphere.go:77
+0xa21
  github.com/docker/kube-e2e-image/vendor/github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync(0xc4217c9b60,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
  	/go/src/github.com/docker/kube-e2e-image/e2e_test.go:88 +0x2c8
  testing.tRunner(0xc4206e01e0, 0x4212900)
  	/usr/local/go/src/testing/testing.go:777 +0xd0
  created by testing.(*T).Run
  	/usr/local/go/src/testing/testing.go:824 +0x2e0

This change fixes the Panic by calling Bootstrap.

Testing:
After this change, tests with FOCUS set to "PersistentVolumes:vsphere"
 dont Panic. They pass as expected.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2018-09-21 13:46:58 -07:00
Patrick Ohly 6dbb07c4b6 CSI E2E: retry csi-pod creation
Normally the pod would get created via a DaemonSet controller, but
during testing it is easier to create it directly. We just need to
ignore errors (like 'No API token found for service account
"csi-service-account"') and retry for a while. If the error persists,
the error will still abort and report it eventually.

This problem also occurs elsewhere, so an utility function in the
framework for it seems justified.

Fixes: #68776
2018-09-21 11:45:52 +02:00
Michelle Au b1594f3cd1 Move storage tests that take longer than 2 minutes to slow suite 2018-09-20 15:29:00 -07:00
k8s-ci-robot 9228bec334
Merge pull request #68579 from verult/adc-crd-access
Updating CSI e2e test to create CSI CRDs
2018-09-19 02:00:30 -07:00
David Zhu 0698354f61 Add privileged test pod security policy to local volume provisioner test service account 2018-09-18 14:25:31 -07:00
Cheng Xing 4ff1e32974 Updating CSI e2e test to create CSI CRDs; storing CRD spec in a common location 2018-09-18 14:25:00 -07:00
Yongxin Li 6a98ce78e4 typo fix from utilites to utilities
Signed-off-by: Yongxin Li <yxli@alauda.io>
2018-09-18 13:52:04 +08:00
David Zhu 9d207b3e3c GetMountRefs should not fail if the path supplied does not exist anymore. It has no mount references 2018-09-17 17:35:12 -07:00
David Zhu 44be42c196 Include PV wait confirmation for Disruptive PV tests 2018-09-17 16:37:23 -07:00
David Zhu bd308d938a Fixed leaking dynamic provioning test PDs 2018-09-14 15:14:17 -07:00
k8s-ci-robot ae935d7293
Merge pull request #68569 from davidz627/fix/driverTestResources
Fix storage test framework leaking resources on cleanup
2018-09-12 21:44:42 -07:00
David Zhu 5155e1b5d9 Test Resource fix for all non-GCE In-tree drivers 2018-09-12 13:59:53 -07:00
David Zhu 725d5ebda4 Fix test framework to pass generic driver specific test specific resources. Fix GCE PD resource leak 2018-09-12 11:29:35 -07:00
k8s-ci-robot c0953ed2d1
Merge pull request #68487 from msau42/fix-regional-size
Fix size of repd e2e to use Gi
2018-09-10 19:17:47 -07:00
Michelle Au 13e3da39ba Fix size of repd e2e to use Gi 2018-09-10 13:29:52 -07:00
David Zhu 24f67fd845 Ignore not found endpoint on deletion 2018-09-10 11:34:41 -07:00
Kubernetes Submit Queue f26556cc14
Merge pull request #67684 from verult/top-csi-driver-registration
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

CSI Node info registration in kubelet

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

**Special notes for your reviewer**:
Feature issue: https://github.com/kubernetes/features/issues/557
Design doc: https://github.com/kubernetes/community/pull/2034

Missing pieces:
* CSI client retry and exponential backoff logic.
* CSINodeInfo object validation
* e2e test with all the CSI machinery.

An RBAC rule is also added to support external-provisioner topology updates.

**Release note**:

```release-note
Registers volume topology information reported by a node-level Container Storage Interface (CSI) driver. This enables Kubernetes support of CSI topology mechanisms.
```
2018-09-08 00:16:52 -07:00
Cheng Xing 94d649b590 Rearranged feature flags 2018-09-07 17:45:27 -07:00
David Zhu face1ead9c Fixed error message reporting for Gluster driver tests 2018-09-06 17:27:28 -07:00
Kubernetes Submit Queue 8e329f1c3c
Merge pull request #68312 from msau42/fix-e2e
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix gce localssd pv tests

**What this PR does / why we need it**:
When running local PV tests against GCE local SSD, it directly uses the disk so doesn't need to create a tmp dir like the other test formats.  Fsgroup tests do not create test-file so don't error on cleanup if the file doesn't exist.


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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-09-06 00:02:02 -07:00
Michelle Au 07ebe323fa Fix gce localssd pv tests 2018-09-05 18:25:47 -07:00
Kubernetes Submit Queue 19c2538798
Merge pull request #67955 from jsafrane/csi-skip-attach-saad
Automatic merge from submit-queue (batch tested with PRs 68161, 68023, 67909, 67955, 67731). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

CSI: skip attach for non-attachable drivers

**What this PR does / why we need it**:
This is implementation of https://github.com/kubernetes/community/pull/2523. CSI volumes that don't need attach/detach now don't need external attacher running.

WIP:
 * contains #67803 to get CSIDriver API. Ignore the first commit.
 * ~~missing e2e test~~

/sig storage

cc: @saad-ali @vladimirvivien @verult @msau42 @gnufied @davidz627 

**Release note**:
```release-note
CSI volume plugin does not need external attacher for non-attachable CSI volumes.
```
2018-09-05 14:51:51 -07:00
Kubernetes Submit Queue 7052a51082
Merge pull request #68023 from wongma7/emptydir-wrapper
Automatic merge from submit-queue (batch tested with PRs 68161, 68023, 67909, 67955, 67731). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Replace git volume with configmap in emptydir wrapper conflict test

**What this PR does / why we need it**: GitRepoVolumeSource is deprecated, use a ConfigMap instead. (This test is part of the conformance suite, so it would be good to allow downstreams to disable/not support gitRepo)

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-09-05 14:51:44 -07:00
Kubernetes Submit Queue 70a0089ae6
Merge pull request #68200 from RenaudWasTaken/pluginwatcher-beta
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

KubeletPluginsWatcher feature is beta in 1.12 release

*What this PR does / why we need it:*
Graduates DevicePlugins feature to beta.

*Which issue(s) this PR fixes:*
Related but does not fix: https://github.com/kubernetes/features/issues/595 as well as https://github.com/kubernetes/kubernetes/issues/65773

*Special notes for your reviewer:*
Includes upgrading the gRPC pluginwatcher API to beta. Based on the [device plugin model](https://github.com/kubernetes/kubernetes/pull/59588).

*Depends on https://github.com/kubernetes/kubernetes/pull/64621 being merged* 

Release note:

```release-note
KubeletPluginsWatcher feature graduates to beta.
```

/sig node
/sig storage

/cc @vladimirvivien @sbezverk @vikaschoudhary16 @saad-ali @vishh @jiayingz
2018-09-05 13:18:39 -07:00
Jan Safranek f1cef9bde4 Add e2e test for skipping attach 2018-09-05 10:35:54 -04:00
Cheng Xing add6e0d7bb CSI e2e test: driver registrar updates for moving PluginWatcher to beta 2018-09-05 14:58:04 +02:00
tanshanshan 33046e3aa5 nits in e2e test 2018-09-05 15:55:41 +08:00
Michelle Au 8091c7975b Integration and e2e tests 2018-09-04 16:30:14 -07:00
Kubernetes Submit Queue be11540775
Merge pull request #68138 from wongma7/nfs-e2e-containerd
Automatic merge from submit-queue (batch tested with PRs 67736, 68123, 68138). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Update external provisioner test to use latest nfs-provisioner

**What this PR does / why we need it**: latest nfs-provisioner will work with cri-containerd, so let's update it

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

**Special notes for your reviewer**: I want to move this test to use nfs-client-provisioner soon anyway since a lot of our e2e tests already use a containerized nfs server and it would be good to be consistent. So this can be treated as something of a stopgap but it would be nice to have ASAP to unblock https://github.com/kubernetes-incubator/external-storage/issues/432#issuecomment-417511065

**Release note**:

```release-note
NONE
```
2018-09-04 12:51:38 -07:00
NickrenREN 5bc823f141 fix and update local volume e2es 2018-09-03 13:35:23 +08:00
Matthew Wong 5d877436bf Update external provisioner test to use latest nfs-provisioner 2018-08-31 16:26:02 -04:00
Kubernetes Submit Queue 07f68ea842
Merge pull request #68099 from mkimuram/issue/68093
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix hostpath subpath reconstruction tests are failing

**What this PR does / why we need it**:
Fix hostpath subpath reconstruction tests are failing

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

**Special notes for your reviewer**:
/sig storage

**Release note**:
```release-note
NONE
```
2018-08-30 18:34:42 -07:00
Kubernetes Submit Queue 88a0987f93
Merge pull request #68088 from msau42/fix-multizone
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix multizone gce pd subpath test

**What this PR does / why we need it**:
The format pod for readonly tests also needs to fill in the NodeSelector for inline gce pd volumes.

Also rename "gce" driver to "gcepd"

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-30 16:48:15 -07:00
Masaki Kimura 79230ee56e Fix hostpath subpath reconstruction tests are failing
Fixes: #68093
2018-08-30 22:53:59 +00:00
Michelle Au 233db366cc Fix multizone gce pd subpath test 2018-08-30 13:53:04 -07:00
Kubernetes Submit Queue 90fed8e27d
Merge pull request #68074 from mkimuram/issue/68073
Automatic merge from submit-queue (batch tested with PRs 67368, 59930, 68074). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix subpath tests not to fail in namespace deletion

**What this PR does / why we need it**:
This PR fixes below subpath test not to fail in namespace deletion

 - subPath should support restarting containers using directory as subpath
 - subPath should support restarting containers using file as subpath

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

**Special notes for your reviewer**:
/sig storage
/sig testing

**Release note**:
```release-note
NONE
```
2018-08-30 12:40:35 -07:00
Kubernetes Submit Queue 39ea20a5bf
Merge pull request #68034 from msau42/remove-feature-tag
Automatic merge from submit-queue (batch tested with PRs 67764, 68034, 67836). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Remove feature tag from dynamic provisioning topology tests

**What this PR does / why we need it**:
Now that the feature has been moved to beta, remove feature tag to let it run in the standard CI suite.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-30 09:59:30 -07:00
Masaki Kimura 69b9cf5ccc Fix subpath tests not to fail in namespace deletion
This commit fixes below subpath test not to fail in namespace deletion

 - subPath should support restarting containers using directory as subpath
 - subPath should support restarting containers using file as subpath

Fixes: #68073
2018-08-30 15:11:27 +00:00
Kubernetes Submit Queue 9ca7ffdf59
Merge pull request #66577 from mkimuram/issue/66571
Automatic merge from submit-queue (batch tested with PRs 66577, 67948, 68001, 67982). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Refactor volume test in a similar way to csi tests

Refactoring for non-csi e2e test similar to below commit in csi e2e test.
4d11dab272 (diff-0d9ecaa3e6a0297186ad33f57aad472e)

Scopes for this refactoring are below three files:
  - test/e2e/storage/volumes.go
  - test/e2e/storage/volume_io.go
  - test/e2e/storage/persistent_volumes-volumemode.go



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

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

**Special notes for your reviewer**:
/sig storage
@davidz627 @msau42 @jsafrane  

**Release note**:

```release-note
NONE
```
2018-08-29 16:33:31 -07:00
Michelle Au a1154682da Remove feature tag from dynamic provisioning topology tests 2018-08-29 13:43:53 -07:00
Matthew Wong e497ea90a8 Replace git volume with configmap in emptydir wrapper conflict test 2018-08-29 14:12:14 -04:00
Masaki Kimura 877ed5c22d Refactor volume test in a similar way to csi tests
Refactoring for non-csi e2e test similar to below commit in csi e2e test.
4d11dab272 (diff-0d9ecaa3e6a0297186ad33f57aad472e)

Scopes for this refactoring are below four files:
  - test/e2e/storage/volumes.go
  - test/e2e/storage/volume_io.go
  - test/e2e/storage/persistent_volumes-volumemode.go
  - test/e2e/storage/subpath.go

fixes: #66571
2018-08-29 14:39:01 +00:00
Deep Debroy 10f652abec E2E tests for allowedTopologies and waitForConsumer for GCE PD and RePD
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2018-08-28 12:35:43 -07:00
Kubernetes Submit Queue 2a2bca5f66
Merge pull request #67281 from tpepper/trivial
Automatic merge from submit-queue (batch tested with PRs 67332, 66737, 67281, 67173). 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>.

storage e2e test: remove race when setting up loopback device

CI has shown occasional failures stemming from an -EBUSY when
test/e2e/storage/persistent_volumes-local.go aka "PersistentVolumes-local"
attempts to do losetup.

Looking at the code, it has a clear race between querying the current
free loopback device and later explicitly attempting to loopback setup a
file at the queried device node.  Losetup nowadays includes the logic to
handle this for the user, if the '-f' option is used instead of naming
the desired target loopback device explicitly.  It is safe to presume
a suitable losetup is present as the '-f' option is used elsewhere in
the test, and it is safe to not record the allocated device, as it is
already queried on the fly elsewhere in the test ahead of other commands
which need to know an already created loopback device's node name.

This patch should result in less flakes for this test case.

Signed-off-by: Tim Pepper <tpepper@vmware.com>

**Release note**:
```release-note
NONE
```
2018-08-21 05:25:10 -07:00
Kubernetes Submit Queue abdfd7cebf
Merge pull request #67318 from tanshanshan/e2e813-1
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>.

Error in return value should be tested and fix Description Info in e2e test

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

1. Error in return value should be tested
2. fix Description Info

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-21 03:12:53 -07:00
tanshanshan e13fadcb6a Error in return value should be tested and fix Description Info 2018-08-18 10:11:08 +08:00
Ken'ichi Ohmichi 2fa840e330 Wait for Available in PV protection test
Just after creating a PV, its phase is "Pending" and its finalizers
doesn't contain "kubernetes.io/pv-protection". If the e2e test performs
so faster than the target k8s cluster, the test fails because the PV is
not ready. This adds WaitForPersistentVolumePhase() for waiting the
phase "Available" to avoid such situation.
2018-08-16 23:27:38 +00:00
Fabio Bertinatto 4ce2058ef6 Add more metrics for A/D Controller:
* Number of Volumes in ActualStateofWorld and DesiredStateofWorld
* Numer of times A/D Controller performs force detach
2018-08-15 10:01:57 +02:00
Kubernetes Submit Queue b4bfb1847c
Merge pull request #66446 from bertinatto/metrics_volume_manager
Automatic merge from submit-queue (batch tested with PRs 61212, 66369, 66446, 66895, 66969). 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 more metrics for Volume Manager

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

This PR adds a few metrics described in the [Metrics Spec](https://docs.google.com/document/d/1Fh0T60T_y888LsRwC51CQHO75b2IZ3A34ZQS71s_F0g/edit#heading=h.ys6pjpbasqdu):

* Number of volumes in ActualStateofWorld and DesiredStateofWorld
* Number of times ReconstructVolume Spec on kubelet failed

**Release note**:

```release-note
NONE
```
2018-08-14 21:18:12 -07:00
Kubernetes Submit Queue 1f86c1cf26
Merge pull request #61212 from charrywanganthony/duplicated_import
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>.

remove duplicated import

**Release note**:

```release-note
NONE
```
2018-08-14 20:18:00 -07:00
Jose A. Rivera 13462bf341 PVC Protection: Wait for Pod delete
Currently, the PVC protection controller will remove its finalizer when
all Pods using a PVC reach at least a Terminating state. However,
certain volumes cannot be guaranteed to be umounted until a Pod is
deleted. Only Pods not in the current pods list can be considered
deleted, so we're removing the exception to not check Terminating Pods.

Signed-off-by: Jose A. Rivera <jarrpa@redhat.com>
2018-08-13 13:57:36 -05:00
Fabio Bertinatto 376a94e039 Add more metrics for Volume Manager
Specifically:

* Number of volumes in ActualStateofWorld and DesiredStateofWorld
* Number of times ReconstructVolume Spec on kubelet failed
2018-08-13 17:36:36 +02:00
Kubernetes Submit Queue 89e57b5051
Merge pull request #67102 from ddebroy/ebs-e2e1
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>.

End2End tests for DynamicVolumeProvisioning of EBS

**What this PR does / why we need it**:
Add end2end tests to exercise `DynamicProvisioningScheduling` features for EBS. The tests make sure `WaitForFirstConsumer` and `AllowedTopologies` specified in a EBS storage class has the desired effect.

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

**Special notes for your reviewer**:
Tests features added to 217a3d8902 

**Release note**:

```
NONE
```
/sig storage
/assign @msau42 @jsafrane
2018-08-10 21:33:57 -07:00
Deep Debroy 0417b21d50 End2End tests for DynamicVolumeProvisioning for EBS
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2018-08-10 16:33:46 -07:00
Tim Pepper 91b0ecc006 storage e2e test: remove race when setting up loopback device
CI has shown occasional failures stemming from an -EBUSY when
test/e2e/storage/persistent_volumes-local.go aka "PersistentVolumes-local"
attempts to do losetup.

Looking at the code, it has a clear race between querying the current
free loopback device and later explicitly attempting to loopback setup a
file at the queried device node.  Losetup nowadays includes the logic to
handle this for the user, if the '-f' option is used instead of naming
the desired target loopback device explicitly.  It is safe to presume
a suitable losetup is present as the '-f' option is used elsewhere in
the test, and it is safe to not record the allocated device, as it is
already queried on the fly elsewhere in the test ahead of other commands
which need to know an already created loopback device's node name.

This patch should result in less flakes for this test case.

Signed-off-by: Tim Pepper <tpepper@vmware.com>
2018-08-10 15:28:50 -07:00
Yang Guo 7a0c1ab322 Allow running various storage e2e tests on custom images 2018-08-09 17:02:02 -07:00
Davanum Srinivas 6cd8bd62fe
e2e test harness - use busybox from dockerhub
Use the same pattern everywhere in the e2e test
harness, use busybox (from dockerhub) instead
of using the one from k8s.gcr.io registry.

Change-Id: I57c3b867408c1f9478a8909c26744ea0368ff003
2018-08-07 11:22:16 -04:00
Manjunath A Kumatagi 1f7f33aaa4 Update the nginx image from hub.docker.com 2018-08-04 05:19:53 +05:30
Kubernetes Submit Queue babdbff848
Merge pull request #66925 from msau42/udev
Automatic merge from submit-queue (batch tested with PRs 66933, 66925). 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>.

Rework multi-volume test to use StatefulSet

**What this PR does / why we need it**:
The e2e test that got added as part of https://github.com/kubernetes/kubernetes/pull/66832 fails in a multi-zone environment because the volumes get provisioned in random zones.  This PR reworks the test to use StatefulSet instead, which handles provisioning multiple PVCs in the same zone.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-03 14:36:02 -07:00
Michelle Au 4fbf25f8c7 Rework multi-volume test to use StatefulSet 2018-08-02 18:36:23 -07:00
Maria Alejandra Kurylec 768f00f351 a) adding documentation for the conformance tests including targeted release and test description. 2018-08-02 13:58:36 -03:00
Maria Alejandra Kurylec e254126f02 a) promoting "Atomic Writer volume" testcases 2018-08-02 13:58:36 -03:00
Kubernetes Submit Queue d3c09656d7
Merge pull request #66832 from msau42/udev
Automatic merge from submit-queue (batch tested with PRs 64645, 66832). 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>.

Detect if GCE PD udev link is wrong and try to correct it

**What this PR does / why we need it**:
udev can miss scsi events and not update device links properly when disks are detached and reattached to the same node in a different order.  This PR workarounds the issue by comparing the udev link name, which is the PD disk name, with the scsi disk serial number returned from scsi_id, and prevents mounting of the disk if the link is wrong.  It will also run `udevadm trigger` on the disk to try to correct the bad link.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
This fix prevents a GCE PD volume from being mounted if the udev device link is stale and tries to correct the link.
```
2018-08-01 17:13:03 -07:00
Kubernetes Submit Queue 9a61384a7d
Merge pull request #66786 from mkurylec/65721-part-1-refactor
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>.

Part 1: Allowing volumes to choose when to use securityContext 

This PR is the result of [splitting this PR]( https://github.com/kubernetes/kubernetes/pull/65793) into 2 sections:
1) This part, addressing the refactor so eligible-test-for-conformance can use get rid of privileged security context.
2) a second part that will address the promotion of the testcases to be in conformance suite.

Changes:
a) demoted privileged mode for these tests (not needed)
b) regular tests (the other ones existing in the file) will still be using privileged security context.
b) adding privilegedSecurityContext field to VolInfo, so each volume-flavor can let the test know if the security context has to be privileged or not.
This allows granular changes and updates per volume).
2018-08-01 10:28:33 -07:00
Michelle Au cf107159b4 Detect if GCE PD udev link is wrong and try to correct it 2018-08-01 10:04:06 -07:00
Chao Wang 39a4730db6 remove duplicated import 2018-08-01 13:27:42 +08:00
Maria Alejandra Kurylec 677eaa5b88 Note:
this PR is the result of splitting https://github.com/kubernetes/kubernetes/pull/65793 into 2 sections
1) This part, addressing the refactor so eligible-test-for-conformance can use get rid of privileged security context.
2) a second part that will address the promotion of the testcases to be in conformance suite

Changes:
a) demoted privileged mode for these tests (not needed)
b) regular tests (the other ones existing in the file) will still be using privileged security context.
c) adding privilegedSecurityContext field to VolInfo, so each volume-flavor can let the test know if the security context has to be privileged or not.
This allows granular changes and updates per volume).
d) fixing formatting issue.
2018-07-31 17:23:46 -03:00
stewart-yu 736694e6ad fix wrong output in e2e log 2018-07-28 14:39:12 +08:00
Cheng Xing 66c48aae67 Flexvolume e2e test for attachable driver: Introduced delay after pod deletion to ensure detach happens 2018-07-25 15:32:55 -07:00
Kubernetes Submit Queue dc663c0b9d
Merge pull request #66405 from davidz627/fix/subpathTestTimeout
Automatic merge from submit-queue (batch tested with PRs 66341, 66405, 66403, 66264, 66447). 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>.

Bump subpath test pod timeout to 5 minutes

Fixes: #66376 

It seems that sometimes `Attach` on GCP side can take multiple minutes (when recently detached from another node) and therefore the old timeout of 1 minute is not long enough. 5 minutes is standard elsewhere and seems to be long enough for the long tail of GCE Attach time.

Also the ext4 test was really hard to debug because all the old PD tests call all the pods "pd-injector" and all the volume mounts "pd-volume." Made a change to make that more readable by adding a length 4 random string suffix.

/kind flake
/sig storage

/assign @msau42 

```release-note
NONE
```
2018-07-20 16:02:08 -07:00
David Zhu 8e85b78652 Changed subpath test pod to use standard 5 minute timeout wait function,
bumped from 1 minute
2018-07-19 14:34:07 -07:00
Fabio Bertinatto a15cc29442 Add extra metrics for PV Controller
Specifically:

* Total provision time
* Total PV deletion time
* Number of times PV provisioning failed
* Number of times PV deletion failed
2018-07-19 15:36:37 +02:00
Kubernetes Submit Queue 77205b90a0
Merge pull request #66172 from krunaljain/bugfix/revert_pd_size_rounding_to_GB
Automatic merge from submit-queue (batch tested with PRs 66172, 66254). 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>.

Reverting commit #56600 as GCE PD is allocated in chunks of GiB inste…

**What this PR does / why we need it:**
This PR reverts the changes made in commit https://github.com/kubernetes/kubernetes/pull/56600 which considered GCE PDs are allocated in chunks of GBs. The following set of operations demonstrate the allocation is in GiBs. 

Manually create a PD in GB, and manually attach it to a node:
```
$ gcloud compute disks create msau-test --zone=us-central1-b --size=1GB
```
Run lsblk on it, and it shows the bytes of the disk are 1GiB:
```
$ lsblk -b
sdc       8:32   0  1073741824  0 disk 
```

**Which issue(s) this PR fixes**:
[65285](https://github.com/kubernetes/kubernetes/issues/65285)
**Special notes for your reviewer**:
```release-note
none
```
2018-07-17 02:13:03 -07:00
Kubernetes Submit Queue bb4bdd08a9
Merge pull request #63877 from AdamDang/patch-9
Automatic merge from submit-queue (batch tested with PRs 63877, 64559, 65952). 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>.

Typo fix in the returned message: dynamicly->dynamically

Line 541: a typo in the returned message: 
dynamicly->dynamically
2018-07-16 17:00:02 -07:00
Krunal Jain 539b3693f4 Reverting commit #56600 as GCE PD is allocated in chunks of GiB instead of GBs
Fixing comments and importing constant from util

Importing constant from util

Fixing comment in volume_provisioning.go
2018-07-16 11:55:57 -07:00
Kubernetes Submit Queue bc98f7a5f2
Merge pull request #66040 from wongma7/attachflag
Automatic merge from submit-queue (batch tested with PRs 66064, 66040). 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>.

Re-enable write-read pv check in volume provisioning tests

**What this PR does / why we need it**: Except for the recently-added CSI tests, every test that uses testDynamicProvisioning in volume_provisioning has been skipping the 
		`By("checking the created volume is writable and has the PV's mount options")`
and
		`By("checking the created volume is readable and retains data")`
steps due to an unintentional change in https://github.com/kubernetes/kubernetes/pull/59879

**Special notes for your reviewer**: The 'attach' variable name is not descriptive at all, default behaviour is unclear. Tests will take longer of course, but that was always the intention, to not only test provisioning of PV is according to PVC but that you can actually r/w it (hence e2e).

**Release note**:

```release-note
NONE
```
2018-07-12 01:34:27 -07:00
Kubernetes Submit Queue bababe08f6
Merge pull request #65854 from cofyc/statefulset_with_podaffinity
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 local volume pod affinity tests.

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

Add local volume pod affinity tests.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #56100 (with already merged prs #59682, #60260)

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-07-10 20:00:12 -07:00
Matthew Wong c968beceb1 Re-enable write-read pv check in volume provisioning tests 2018-07-10 16:20:58 -04:00
Matthew Wong 000aea63ca Fix wrong flexvolume dir on gce ubuntu 2018-07-09 15:34:19 -04:00
Yecheng Fu c3715da13f Add local volume pod affinity tests. 2018-07-08 02:36:49 +00:00
Kubernetes Submit Queue 9f3e2010dc
Merge pull request #65117 from mkimuram/issue/56803v2
Automatic merge from submit-queue (batch tested with PRs 64593, 65117, 65629, 65827, 65686). 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 e2e tests for volumeMode of persistent volume

This set of e2e tests is to confirm that persistent volume works well for all volumeModes.
Coverage of the tests are shown in the figure of [Test cases], below.

Once implementation policy is confirmed to be good, we can add plugins and test cases to this.
[Test cases]
```
 #   plugin      volumeMode    Test case                                                Expectation
--- ---------- -------------- ------------------------------------------------------ ------------
 1    iSCSI      Block         (a) Create Pod with PV and confirm Read/Write to PV    Success
 2    iSCSI      Block         (b) Create Pod and restart kubelet and confirm PV      Success
 3    iSCSI      Block         (c) Create Pod and restart kubelet while deleting PV   Success
 4    iSCSI      FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success
 5    iSCSI      FileSystem    (b) Create Pod and restart kubelet and confirm PV      Success
 6    iSCSI      FileSystem    (c) Create Pod and restart kubelet while deleting PV   Success
 7    RBD        Block         (a) Create Pod with PV and confirm Read/Write to PV    Success
 8    RBD        Block         (b) Create Pod and restart kubelet and confirm PV      Success
 9    RBD        Block         (c) Create Pod and restart kubelet while deleting PV   Success
10    RBD        FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success
11    RBD        FileSystem    (b) Create Pod and restart kubelet and confirm PV      Success
12    RBD        FileSystem    (c) Create Pod and restart kubelet while deleting PV   Success
13    CephFS     Block         (a) Create Pod with PV and confirm Read/Write to PV    Fail
14    CephFS     FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success
15    CephFS     FileSystem    (b) Create Pod and restart kubelet and confirm PV      Success
16    CephFS     FileSystem    (c) Create Pod and restart kubelet while deleting PV   Success
17    NFS        Block         (a) Create Pod with PV and confirm Read/Write to PV    Fail
18    NFS        FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success
19    NFS        FileSystem    (b) Create Pod and restart kubelet and confirm PV      Success
20    NFS        FileSystem    (c) Create Pod and restart kubelet while deleting PV   Success
```




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

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

**Special notes for your reviewer**:
/sig storage
@gnufied  @rootfs @jsafrane @jeffvance 

This PR is intend to reflect the comments for the below PR.
https://github.com/kubernetes/kubernetes/pull/56804

**Release note**:

```release-note
NONE
```
2018-07-04 18:52:10 -07:00
Hemant Kumar 4e7c2f638d Make various fixes to flex tests and fix some crashes
Remove disruptive from flex
2018-06-29 11:10:26 -04:00
Masaki Kimura 1b06ba5072 Add e2e tests for volumeMode of persistent volume
This set of e2e tests is to confirm that persistent volume works well for all volumeModes.
Coverage of the tests are shown in the figure of [Test cases], below.

Once implementation policy is confirmed to be good, we can add plugins and test cases to this.

[Test cases]
 #   plugin      volumeMode    Test case                                              Expectation
--- ---------- -------------- ------------------------------------------------------ ------------
 1    iSCSI      Block         (a) Create Pod with PV and confirm Read/Write to PV    Success
 2    iSCSI      FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success
 3    RBD        Block         (a) Create Pod with PV and confirm Read/Write to PV    Success
 4    RBD        FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success
 5    CephFS     Block         (a) Create Pod with PV and confirm Read/Write to PV    Fail
 6    CephFS     FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success
 7    NFS        Block         (a) Create Pod with PV and confirm Read/Write to PV    Fail
 8    NFS        FileSystem    (a) Create Pod with PV and confirm Read/Write to PV    Success

fixes: #56803
2018-06-27 17:25:55 +00:00
Yecheng Fu 1fbc5babb5 Prepare local volumes via hostexec pod. 2018-06-26 13:18:55 +08:00
Jeff Grafton 23ceebac22 Run hack/update-bazel.sh 2018-06-22 16:22:57 -07:00
Kubernetes Submit Queue cbe4f48866
Merge pull request #65064 from davidz627/fix/CSIe2eAttach
Automatic merge from submit-queue (batch tested with PRs 65064, 65218, 65260, 65241, 64372). 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>.

Added attach/mount/check steps to CSI Driver E2E tests

This PR makes the CSI Volume E2E tests actually go through the entire dynamic provisioning pipeline and test attach/mount/check file etc.

Fixes #64927

```release-note
None
```
2018-06-21 21:12:09 -07:00
Kubernetes Submit Queue 18b16be622
Merge pull request #65223 from jsafrane/aws-inaccessible-key
Automatic merge from submit-queue (batch tested with PRs 65187, 65206, 65223, 64752, 65238). 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 detection of inaccessible AWS encryption key.

AWS provisioner now checks if created encrypted volume gets "Available" or it gets silently deleted by AWS because StorageClass referenced invalid (e.g. non-existing) KMS key for encryption.

This seems to be the only way how to detect such invalid key, because Kubernetes may not have enough permission to check if the key exists.

**Which issue(s) this PR fixes**
Fixes #62171

**Special notes for your reviewer**:

**Release note**:

```release-note
AWS now checks for validity of ecryption key when creating encrypted volumes. Dynamic provisioning of encrypted volume may get slower due to these checks.
```

/sig aws
/sig storage
@kubernetes/sig-aws-misc
2018-06-21 19:48:10 -07:00
Kubernetes Submit Queue 7a954fd37c
Merge pull request #65056 from jsafrane/aws-provisioning-tests
Automatic merge from submit-queue (batch tested with PRs 65123, 65176, 65139, 65084, 65056). 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>.

Enable dynamic provisioning tests on AWS.

The tests are not slow, they finish on GCE in ~46 seconds and on AWS
in ~103 seconds.

**Release note**:

```release-note
NONE
```
2018-06-21 16:56:19 -07:00
Kubernetes Submit Queue 02dba36128
Merge pull request #65019 from mirake/fix-typo-toto
Automatic merge from submit-queue (batch tested with PRs 65265, 64822, 65026, 65019, 65077). 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>.

Typo fix: toto -> to
2018-06-21 11:25:16 -07:00
Kubernetes Submit Queue 06b3f35b7f
Merge pull request #64767 from jsafrane/remove-volume-feature
Automatic merge from submit-queue (batch tested with PRs 64416, 63625, 60967, 64767, 64588). 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>.

Remove Feature:Volume from tests

These tests don't depend on any alpha/beta feature and they have correct `SkipUnlessProviderIs` tests so they run only on proper cloud.

/kind feature
/sig storage

**Release note**:

```release-note
NONE
```
2018-06-20 07:12:27 -07:00
David Zhu 77df3ff525 Added attach/mount/check steps to CSI Driver E2E tests 2018-06-19 13:43:36 -07:00
Jan Safranek 7bbe309d8d Fixed detection of inaccessible AWS encryption key. 2018-06-19 10:11:47 +02:00
Jan Safranek a15a2af085 Enable dynamic provisioning tests on AWS.
The tests are not slow, they finish on GCE under 1.5 minutes and on AWS
under 3 minutes.
2018-06-13 13:09:25 +02:00
ruicao 95c232ee07 Typo fix: toto -> to 2018-06-12 23:12:39 +08:00
Kubernetes Submit Queue a9d2b5eeae
Merge pull request #63780 from pohly/csi-e2e-parameters
Automatic merge from submit-queue (batch tested with PRs 60699, 63780). 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/storage: parameterize container images

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

The CSI integration test for hostpath was hard-coded to use the latest
stable release of the sidecar and hostpath container images. This
makes sense for regression testing of changes made in Kubernetes
itself, but the same test is also useful for testing the "canary"
images on quay.io before tagging them as a new release or for testing
locally produced images. Both is now possible via command line
parameters.

**Which issue(s) this PR fixes**:
Related-to: kubernetes-csi/docs#23

**Special notes for your reviewer**:

The commit message has usage instructions.

```release-note
NONE
```

/sig storage
2018-06-08 11:26:09 -07:00
Hemant Kumar f44d1b9b37 Fix setup of configmap/secret/projected/downwardapi
Only call setup after they are found; otherwise
we are left with orphan directories that are never
cleaned up.
2018-06-07 09:15:01 -04:00
Jan Safranek e483efd0ac Remove Feature:Volume from tests
These tests don't depend on any alpha/beta feature and they have correct
Skip tests so they run only on proper cloud.
2018-06-05 15:39:32 +02:00
Michelle Au f3f1a04705 Only mount subpath as readonly if specified in volumeMount 2018-06-04 12:05:23 -07:00
Kubernetes Submit Queue 38d2dc7068
Merge pull request #64447 from jsafrane/block-provision
Automatic merge from submit-queue (batch tested with PRs 63348, 63839, 63143, 64447, 64567). 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 block volume support to internal provisioners.

**What this PR does / why we need it**:
Internal provisioners now create filesystem PVs when block PVs are requested. This leads to unbindable PVCs.

In this PR, volume plugins that support block volumes provision block PVs when block is requested. All the other provisioners return clear error in `kubectl describe pvc`:

```
Events:
  Type     Reason              Age               From                         Message
  ----     ------              ----              ----                         -------
  Warning  ProvisioningFailed  7s (x2 over 18s)  persistentvolume-controller  Failed to provision volume with StorageClass "standard": kubernetes.io/cinder does not support block volume provisioning

```

```release-note
NONE
```

cc @kubernetes/vmware for vsphere changes
cc @andyzhangx for Azure changes

/assign @copejon @mtanino
2018-06-01 12:12:23 -07:00
Kubernetes Submit Queue 2cef77db8e
Merge pull request #64480 from verult/repd-ig-fix
Automatic merge from submit-queue (batch tested with PRs 62460, 64480, 63774, 64540, 64337). 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>.

Modified regional PD test to fetch template name from GCE

**What this PR does / why we need it**: Previously, the regional PD failover e2e test assumes a specific relationship between the names of an instance group and its corresponding template. It turns out to not always hold true for different types of clusters. Instead, the test should fetch the correct template name by calling out to GCE.

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

Need to cherry pick this back to 1.10 along with #64223 

**Release note**:

```release-note
NONE
```

/assign @saad-ali @wojtek-t 
/sig storage
2018-05-31 14:12:15 -07:00
Jan Safranek 408f62ca4e e2e test for block volume provisioning 2018-05-30 11:35:58 +02:00
Cheng Xing 82f9d9365e Modified regional PD test to fetch template name from GCE 2018-05-29 15:51:24 -07:00
Kubernetes Submit Queue 35038bd59a
Merge pull request #64308 from jsafrane/rbd-startup
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>.

Move Ceph server secret creation to common code.

The secret should be created only on one place.

**Release note**:

```release-note
NONE
```

@jeffvance @copejon @rootfs @msau42 PTAL
2018-05-28 18:02:37 -07:00
Patrick Ohly cc2a5954ac e2e/storage: central argument handling
Putting the command line argument handling into the central test
context seems like the better solution, in particular considering that
argument handling might get changed in the future to use Viper.
2018-05-28 11:46:50 +02:00
Kubernetes Submit Queue 9872a0502b
Merge pull request #64288 from gnufied/take-volume-resize-beta
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>.

Move volume resize feature to beta

Move volume resizing feature to beta. 

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

```release-note
Move Volume expansion to Beta
```
2018-05-26 01:34:17 -07:00
Maciej Szulik 383872615d
Remove kubectl reapers 2018-05-25 22:18:05 +02:00
Hemant Kumar 354cfcf618 Remove feature tags from e2e test for resize 2018-05-25 15:32:44 -04:00
Hemant Kumar 23a73283b3 Fix breaking volume resize e2e tests 2018-05-25 15:32:44 -04:00
Jan Safranek 5a099d70c9 Move Ceph server secret creation to common code. 2018-05-25 14:02:59 +02:00
Kubernetes Submit Queue 70df783b3c
Merge pull request #64223 from verult/e2e-repd-regsuite
Automatic merge from submit-queue (batch tested with PRs 64174, 64187, 64216, 63265, 64223). 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>.

Moving Regional PD e2e tests to regular test suites

**What this PR does / why we need it**: Regional PD e2e tests previously only run on alpha suites. Need to move them to the regular test suites

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

**Special notes for your reviewer**: Will be cherry-picked to 1.10 once merged.

**Release note**:

```release-note
NONE
```
/sig gcp
/sig storage
/assign @msau42 @saad-ali
2018-05-24 09:41:26 -07:00
Kubernetes Submit Queue 481b2dc7cf
Merge pull request #62102 from cofyc/fixlocalvolumefsgroup
Automatic merge from submit-queue (batch tested with PRs 64013, 63896, 64139, 57527, 62102). 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>.

Setup fsGroup for local volumes correctly

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

This pr fixes fsGroup check in local volume in containerized kubelet. Except this, it also fixes fsGroup check when volume source is a normal directory whether kubelet is running on the host or in a container.

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

**Special notes for your reviewer**:

Bind mounts are detected in `/proc/mounts`, but it does not contain root of mount for bind mounts. So `mount.GetMountRefsByDev()` cannot get all references if source is a normal directory. e.g.

```
# mkdir /tmp/src /mnt/dst
# mount --bind /tmp/src /tmp/src # required by local-volume-provisioner, see https://github.com/kubernetes-incubator/external-storage/pull/499
# mount --bind /tmp/src /mnt/dst
# grep -P 'src|dst' /proc/mounts 
tmpfs /tmp/src tmpfs rw,nosuid,nodev,noatime,size=4194304k 0 0
tmpfs /mnt/dst tmpfs rw,nosuid,nodev,noatime,size=4194304k 0 0
# grep -P 'src|dst' /proc/self/mountinfo 
234 409 0:42 /src /tmp/src rw,nosuid,nodev,noatime shared:30 - tmpfs tmpfs rw,size=4194304k
235 24 0:42 /src /mnt/dst rw,nosuid,nodev,noatime shared:30 - tmpfs tmpfs rw,size=4194304k
```

We need to compare root of mount and device in this case.

**Release note**:

```release-note
NONE
```
2018-05-23 19:44:24 -07:00
Kubernetes Submit Queue 5fe35cdbf9
Merge pull request #61419 from enisoc/apps-v1-deploy
Automatic merge from submit-queue (batch tested with PRs 62756, 63862, 61419, 64015, 64063). 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>.

Use apps/v1 Deployment/ReplicaSet in controller and kubectl

This updates the Deployment controller and integration/e2e tests to use apps/v1, as part of #55714.

This also requires updating any other components that use the `deployment/util` package, most notably `kubectl`. That means client versions 1.11 and above will only work with server versions 1.9 and above. This is well within our client-server version skew policy of +/-1 minor version.

However, this PR *only* updates the parts of `kubectl` that used `deployment/util`. So although kubectl now requires apps/v1, it still also depends on extensions/v1beta1. Migrating other parts of kubectl to apps/v1 is beyond the scope of this PR, which was just to change the Deployment controller and fix all the fallout.

```release-note
kubectl: This client version requires the `apps/v1` APIs, so it will not work against a cluster version older than v1.9.0. Note that kubectl only guarantees compatibility with clusters that are +/-1 minor version away.
```
2018-05-23 18:14:13 -07:00
Cheng Xing 7653fb6887 Moving Regional PD e2e tests to regular test suites 2018-05-23 12:47:24 -07:00
Yecheng Fu df0f108a02 Fixes fsGroup check in local volume in containerized kubelet. Except
this, it also fixes fsGroup check when volume source is a normal
directory whether kubelet is running on the host or in a container.
2018-05-23 10:41:42 +08:00
Anthony Yeh a6a5190494
test/e2e: Use apps/v1 Deployment/ReplicaSet.
This must be done at the same time as the controller update,
since they share code.
2018-05-22 13:43:06 -07:00
Luis Pabón a0b9219c4c e2e: Remove flaky from CSI E2E test
The tests have been passing consistently and now we can remove
the Flaky tag.
2018-05-22 02:39:34 -04:00
Michelle Au 46b62c20e4 Wait for pod deletion instead of termination 2018-05-17 10:08:54 -07:00
AdamDang cf50026886
Typo fix in the returen message: dynamicly->dynamically
dynamicly->dynamically
2018-05-16 01:18:43 +08:00
Patrick Ohly 54d9c4ea25 e2e/storage: parameterize container images
The CSI integration test for hostpath was hard-coded to use the latest
stable release of the sidecar and hostpath container images. This
makes sense for regression testing of changes made in Kubernetes
itself, but the same test is also useful for testing the "canary"
images on quay.io before tagging them as a new release or for testing
locally produced images. Both is now possible via command line
parameters.

Testing "canary" images on quay.io:

  go run hack/e2e.go -- --provider=local --test \
     --test_args="--ginkgo.focus=CSI.plugin.test.using.CSI.driver..hostPath -csiImageVersion=canary"

Testing local container images:

  # https://docs.docker.com/registry/deploying/
  docker run -d -p 5000:5000 --restart=always --name registry registry:2
  for i in driver-registrar drivers external-attacher external-provisioner; do
     make -C $i REGISTRY_NAME=localhost:5000 push
  done
  go run hack/e2e.go -- --provider=local --test \
     --test_args="--ginkgo.focus=CSI.plugin.test.using.CSI.driver..hostPath -csiImageVersion=canary -csiImageRegistry=localhost:5000"
2018-05-14 10:42:31 +02:00
Kubernetes Submit Queue e6b6e5c4b4
Merge pull request #63045 from msau42/fix-subpath-readonly
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>.

passthrough readOnly to subpath

**What this PR does / why we need it**:
If a volume is mounted as readonly, or subpath volumeMount is configured as readonly, then the subpath bind mount should be readonly.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Fixes issue where subpath readOnly mounts failed
```
2018-05-07 23:36:49 -07:00
Kubernetes Submit Queue d7d4381961
Merge pull request #63338 from humblec/e2e-test-1
Automatic merge from submit-queue (batch tested with PRs 63373, 63338). 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>.

Enable GCE/GKE e2e tests for GlusterFS Dynamic Provisioner.

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>



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

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

**Special notes for your reviewer**:

**Release note**:

```release-note

```
2018-05-07 12:22:10 -07:00
Humble Chirammal 92928845d2 Enable GCE/GKE e2e tests for GlusterFS Dynamic Provisioner.
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2018-05-07 23:04:36 +05:30
Kubernetes Submit Queue 484f62a568
Merge pull request #63333 from deads2k/api-14-snip
Automatic merge from submit-queue (batch tested with PRs 63421, 63432, 63333). 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>.

update tests to be specific about the versions they are testing

When setting up tests, you want to rely on your own scheme.  This eliminates coupling to floating versions which gives unnecessary flexibility in most cases and prevents testing all the versions you need.

@liggitt  scrubs unnecessary deps.

```release-note
NONE
```
2018-05-04 10:52:10 -07:00
Yecheng Fu a84ebb5193 PR #62903 changed error string GetMountRefs() returned, which broke test
`should fail due to non-existent path`.
Remove error string check to fix test.
2018-05-03 16:33:28 +08:00
Kubernetes Submit Queue 186dd7beb1
Merge pull request #62903 from cofyc/fixfsgroupcheckinlocal
Automatic merge from submit-queue (batch tested with PRs 62657, 63278, 62903, 63375). 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 more volume types in e2e and fix part of them.

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

- Add dir-link/dir-bindmounted/dir-link-bindmounted/bockfs volume types for e2e tests.
- Fix fsGroup related e2e tests partially.
- Return error if we cannot resolve volume path.
  - Because we should not fallback to volume path, if it's a symbolic link, we may get wrong results.

To safely set fsGroup on local volume, we need to implement these two methods correctly for all volume types both on the host and in container:

- get volume path kubelet can access
  - paths on the host and in container are different
- get mount references
  - for directories, we cannot use its mount source (device field) to identify mount references, because directories on same filesystem have same mount source (e.g. tmpfs), we need to check filesystem's major:minor and directory root path on it

Here is current status:

| | (A) volume-path (host) | (B) volume-path (container) | (C) mount-refs (host) | (D) mount-refs (container) |
| --- | --- | --- | --- | --- |
| (1) dir | OK | FAIL | FAIL | FAIL |
| (2) dir-link | OK | FAIL | FAIL | FAIL |
| (3) dir-bindmounted | OK | FAIL | FAIL | FAIL |
| (4) dir-link-bindmounted | OK | FAIL | FAIL | FAIL |
| (5) tmpfs| OK | FAIL | FAIL | FAIL |
| (6) blockfs| OK | FAIL | OK | FAIL |
| (7) block| NOTNEEDED | NOTNEEDED | NOTNEEDED | NOTNEEDED |
| (8) gce-localssd-scsi-fs| NOTTESTED | NOTTESTED | NOTTESTED | NOTTESTED |

- This PR uses `nsenter ... readlink` to resolve path in container as @msau42  @jsafrane [suggested](https://github.com/kubernetes/kubernetes/pull/61489#pullrequestreview-110032850). This fixes B1:B6 and D6, , the rest will be addressed in https://github.com/kubernetes/kubernetes/pull/62102.
- C5:D5 marked `FAIL` because `tmpfs` filesystems can share same mount source, we cannot rely on it to check mount references. e2e tests passes due to we use unique mount source string in tests.
- A7:D7 marked `NOTNEEDED` because we don't set fsGroup on block devices in local plugin. (TODO: Should we set fsGroup on block device?)
- A8:D8 marked `NOTTESTED` because I didn't test it, I leave it to `pull-kubernetes-e2e-gce`. I think it should be same as `blockfs`.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-05-02 20:13:11 -07:00
Yecheng Fu 3748197876 Add more volume types in e2e and fix part of them.
- Add dir-link/dir-bindmounted/dir-link-bindmounted/blockfs volume types for e2e
tests.
- Return error if we cannot resolve volume path.
- Add GetFSGroup/GetMountRefs methods for mount.Interface.
- Fix fsGroup related e2e tests partially.
2018-05-02 10:31:42 +08:00
David Eads 94e3d94d67 update tests to be specific about the versions they are testing instead of floating 2018-05-01 13:18:41 -04:00
Kubernetes Submit Queue 34706b79e4
Merge pull request #59879 from humblec/gluster-dp-test-latest_1
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 tests for GlusterFS dynamic provisioner.

This bring up a heketi server pod and the server will be running
    in mock mode, the PVC creation should work, however the volume
    attachment to a pod and read/write is not part of this test. Due
    to the same reason the tests are marked as [fast].


Signed-off-by: Humble Chirammal <hchiramm@redhat.com>



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

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

**Special notes for your reviewer**:

**Release note**:

```release-note

```
2018-04-30 06:09:52 -07:00
Humble Chirammal b550134dfe This bring up a heketi server pod and the server will be running
in mock mode, the PVC creation should work, however the volume
attachment to a pod and read/write is not part of this test. Due
to the same reason the tests are marked as [fast].

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2018-04-27 09:24:25 +05:30
Michelle Au 6b1947c9ba passthrough readOnly to subpath 2018-04-26 11:18:36 -07:00
Luis Pabón f416871e57
Update provisioner to v0.2.1 container
Update the csi-provisioner to [v0.2.1](https://github.com/kubernetes-csi/external-provisioner/releases/tag/v0.2.1)
2018-04-25 12:16:25 -04:00
Yecheng Fu 27e2e32b00 Use shorter timeout if possible.
- Add PodStartShortTimeout and ClaimProvisionShortTimeout constants.
- Change framework.PodStartTimeout to framework.PodStartShortTimeout in
  persistent_volumes-local.go. Busybox image is very small, no need to
  wait for a long time.
2018-04-19 10:07:59 +08:00
Kubernetes Submit Queue 17fec00b89
Merge pull request #62433 from davidz627/feature/csiGCETest
Automatic merge from submit-queue (batch tested with PRs 62694, 62569, 62646, 61633, 62433). 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 GCE-PD CSI Driver test to E2E test suite

Fixes: #60462

/sig storage
/kind technical-debt
/assign @saad-ali @msau42 

**What this PR does / why we need it**:
This PR adds an E2E test for the GCE-PD CSI driver that deploys the driver in a production-like setting and tests whether dynamic provisioning with the driver is possible.

```release-note
NONE
```
2018-04-18 14:44:24 -07:00
Kubernetes Submit Queue b758341a04
Merge pull request #62646 from cofyc/reporteventtoapiserver
Automatic merge from submit-queue (batch tested with PRs 62694, 62569, 62646, 61633, 62433). 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>.

Report events to apiserver in local volume plugin.

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

See https://github.com/kubernetes/kubernetes/pull/62102#discussion_r179238429.

Report events to apiserver in local volume plugin.

- Add VolumeHost.GetEventRecorder() method
- Add related e2e tests

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

**Special notes for your reviewer**:

Example output of `kubectl describe pods`:

```
Events:
  Type     Reason                 Age   From                Message
  ----     ------                 ----  ----                -------
  Normal   Scheduled              7s    default-scheduler   Successfully assigned e2e-tests-persistent-local-volumes-test-x4h5x/security-context-670da435-4174-11e8-9098-000c29bb0377 to 127.0.0.1
  Warning  AlreadyMountedVolume   7s    kubelet, 127.0.0.1  The requested fsGroup is 4321, but the volume local-pvfbb76 has GID 1234. The volume may not be shareable.
  Normal   SuccessfulMountVolume  7s    kubelet, 127.0.0.1  MountVolume.SetUp succeeded for volume "default-token-996xr"
  Normal   SuccessfulMountVolume  7s    kubelet, 127.0.0.1  MountVolume.SetUp succeeded for volume "local-pvfbb76"
  Normal   Pulled                 6s    kubelet, 127.0.0.1  Container image "k8s.gcr.io/busybox:1.24" already present on machine
  Normal   Created                6s    kubelet, 127.0.0.1  Created container
  Normal   Started                6s    kubelet, 127.0.0.1  Started container
```

**Release note**:

```release-note
NONE
```
2018-04-18 14:44:17 -07:00
David Zhu 4d11dab272 CSI test refactor to be more easily extensible for more plugins when there are more tests 2018-04-18 11:24:36 -07:00
Yecheng Fu 55ef18ad42 Report events to apiserver in local volume plugin.
- Add VolumeHost.GetEventRecorder() method
- Add related e2e tests
2018-04-18 11:19:36 +08:00
Kubernetes Submit Queue 26135c5f4b
Merge pull request #62303 from msau42/fix-subpath-reconstruct-test
Automatic merge from submit-queue (batch tested with PRs 62650, 62303, 62545, 62375). 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 subpath reconstruction tests to use util test

**What this PR does / why we need it**:
Use common util method for reconstruction tests so that test updates will be reflected in all e2es.  Also increase termination grace period to allow more time for volume manager to cleanup before the tests check for leftover mounts

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-04-16 13:56:07 -07:00
David Zhu 01d916167b Add GCE-PD CSI Driver test to E2E test suite 2018-04-13 15:31:33 -07:00
Kubernetes Submit Queue dacb9ad692
Merge pull request #62411 from msau42/local-e2e-mountprop
Automatic merge from submit-queue (batch tested with PRs 62455, 62465, 62427, 62416, 62411). 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>.

Set slave mount propagation for local provisioner

**What this PR does / why we need it**:
Explicitly set slave mount propagation instead of assuming it's the default mode.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-04-12 08:54:25 -07:00
Michelle Au 7aca917ea4 Refactor subpath reconstruction tests to use util test 2018-04-11 14:20:29 -07:00
Michelle Au bf70c0af4e Set slave mount propagation for local provisioner 2018-04-11 10:28:06 -07:00
Kubernetes Submit Queue 39847f5340
Merge pull request #62317 from xiangpengzhao/update-sca-test
Automatic merge from submit-queue (batch tested with PRs 46903, 61721, 62317). 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>.

Remove the use of storage class beta annotations in e2e tests.

**What this PR does / why we need it**:
Since we are going to remove storage class beta annotations, we'd like to remove the use of it in e2e tests to avoid upgrade test issues when it's finally removed.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
ref: https://github.com/kubernetes/kubernetes/pull/51440#discussion_r180290591

**Special notes for your reviewer**:
This should be cherry-picked to 1.10 as well. https://github.com/kubernetes/kubernetes/pull/51440#discussion_r178919464

/cc @msau42 

**Release note**:

```release-note
NONE
```
2018-04-11 00:51:14 -07:00
Kubernetes Submit Queue 56d6f05d23
Merge pull request #61866 from davidz627/fix/CSIe2e
Automatic merge from submit-queue (batch tested with PRs 62192, 61866, 62206, 62360). 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 CSI External Components ClusterRole to bootstrapped roles 

Added CSI External Components ClusterRole to bootstrapped roles and removed creation from failing e2e test

Fixes: #61781

/sig storage
/kind bug
/assign @liggitt @saad-ali 

```release-note
NONE
```
2018-04-10 23:52:17 -07:00
Kubernetes Submit Queue cc826360ef
Merge pull request #61614 from vmware/vpxd-restart-test
Automatic merge from submit-queue (batch tested with PRs 60197, 61614, 62074, 62071, 62301). 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>.

Adds e2e test for vpxd restart scenario in vSphere Cloud Provider

This PR adds a test to verify Volume access in a situation where VMware vCenter's `vpxd` service is down. The test mainly verifies Volume/file access before, during, and after restarting the `vpxd` service on the vCenter host.

See vmware/kubernetes#373 for more details.

**Reviewers note:** This PR was internally reviewed at vmware/kubernetes#468.

/cc @kubernetes/vmware
2018-04-10 08:56:19 -07:00
xiangpengzhao 291b1437a5 Auto generated BUILD files. 2018-04-10 15:30:15 +08:00
xiangpengzhao 1f80008f41 Remove the use of storage class beta annotations in e2e tests. 2018-04-10 15:29:08 +08:00
David Zhu fbbccbf92d Added CSI External Components ClusterRole to bootstrapped roles and removed creation from failing e2e test 2018-04-09 14:16:48 -07:00
Venil Noronha d101799203 Addresses review comments 2018-04-09 11:23:58 -07:00
Tim Hockin 89ceb7ef46 Pass 2: k8s GCR vanity URL 2018-04-06 08:14:58 -07:00
Kubernetes Submit Queue f2642c1764
Merge pull request #61371 from msau42/subpath-e2es
Automatic merge from submit-queue (batch tested with PRs 60465, 61773, 61371, 61146). 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 more e2e subpath tests

**What this PR does / why we need it**:
Adds e2e tests for detecting subpath cleanup failures:
* Add wait for pod deletion to the end of subpath tests
* Add subpath as file test case
* Add subpath as file with container restart test case
* Refactor atomic volume tests

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-03-28 01:34:50 -07:00
Kubernetes Submit Queue 66ecee9cc0
Merge pull request #61402 from lcfang/test0319
Automatic merge from submit-queue (batch tested with PRs 61402, 61143, 61427, 60592). 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>.

delete some unused code

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

delete some unused code

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-03-27 15:33:07 -07:00
Michelle Au c8926bc8e0 Add pod deletion to subpath tests, and subpath as file with container restart 2018-03-27 15:14:19 -07:00
Kubernetes Submit Queue af22cc80e3
Merge pull request #61019 from ianchakeres/e2e-lv-prov-bind-disc
Automatic merge from submit-queue (batch tested with PRs 61644, 61624, 61743, 61019, 61287). 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>.

Added e2e test for local-volume provisioner that does not create PV for discovered non-bind-mounted filesystem.

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

For v2+ of the [local volume provisioner](https://github.com/kubernetes-incubator/external-storage/tree/master/local-volume) non-bind mounted filesystems in a discovery directory will no longer result in local PVs. This change was put in place to handle the non-atomic nature of other methods of adding directories (e.g. https://github.com/kubernetes-incubator/external-storage/issues/482).

This PR tests this change in behavior, and it validates that non-bind mounted directories within a discovery directory do NOT result in a local PV.

**Which issue(s) this PR fixes**:
Fixes https://github.com/kubernetes/kubernetes/issues/61020

**Special notes for your reviewer**:

This test can be executed using the following commands:
```
KUBE_FEATURE_GATES="BlockVolume=true" NUM_NODES=1 go run hack/e2e.go -- --up

go run hack/e2e.go -- --test --test_args='--ginkgo.focus=PersistentVolumes-local.*Local.*volume.*provisioner'
```

If you get the logs from a local volume provisioner pod, you will see the following log messages:
```
$ kubectl logs local-volume-provisioner-94ddb -n e2e-tests-persistent-local-volumes-test-6ls4z
<snip>
I0311 19:01:30.350504       1 controller.go:73] Controller started
E0311 19:01:30.350849       1 discovery.go:172] Path "/mnt/local-storage/notbindmount" is not an actual mountpoint
```


**Release note**:
```release-note
NONE
```
2018-03-27 06:41:20 -07:00
lcfang a3c1dfba24 delete some unused code 2018-03-27 09:45:53 +08:00
Kubernetes Submit Queue 0874c5424a
Merge pull request #61597 from ianchakeres/e2e-lv-prov-2.1
Automatic merge from submit-queue (batch tested with PRs 60455, 61365, 61375, 61597, 61491). 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 lv-provisioner image to v2.1.0 in e2e tests

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

This PR updates the [local volume provisioner](https://github.com/kubernetes-incubator/external-storage/tree/master/local-volume) to v2.1.0 in the e2e tests for k8s v1.10.

**Which issue(s) this PR fixes**:
Fixes #61596

**Special notes for your reviewer**:

The following commands can be used to perform these tests:
```
$ make WHAT=test/e2e/e2e.test

$ KUBE_FEATURE_GATES="BlockVolume=true" NUM_NODES=1 go run hack/e2e.go -- --up

$ go run hack/e2e.go -- --test --test_args='--ginkgo.focus=PersistentVolumes-local.*Local.*volume.*provisioner’
```

**Release note**:
```release-note
NONE
```
2018-03-26 15:34:48 -07:00
p0lyn0mial 1f1d24005a removes custom scalers from kubectl 2018-03-26 19:33:42 +02:00
Kubernetes Submit Queue ef7c7538d5
Merge pull request #61554 from lpabon/csi-e2e
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:Enable CSI tests

**What this PR does / why we need it**:
Enable CSI e2e tests now that CSI objects in Kubernetes are Beta.
2018-03-25 15:09:00 -07:00
Ian Chakeres 6e53b1a313 Added e2e test for local-volume provisioner that does not create PV for discovered non-bind-mounted filesystem.
Inspect daemonset provisioner logs for validation.

The logs are examined for the log lines showing that the provisioner discovered the directories and did NOT create a local PV.

This commit also adds SkipUnlessProvider supports SSH, which is required for local PV e2e tests.
2018-03-24 06:22:18 -07:00
Venil Noronha e90246d661 Adds e2e test for the VMware vpxd restart scenario
This commit adds a test to verify Volume access in a situation where
VMware vCenter's vpxd service is down. The test mainly verifies
Volume/file access before, during, and after restarting the vpxd
service on the vCenter host.
2018-03-23 16:49:03 -07:00
Kubernetes Submit Queue 915798d229
Merge pull request #60563 from hzxuzhonghu/replace-context
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>.

Replace package "golang.org/x/net/context" with "context"

**What this PR does / why we need it**:
Replace package "golang.org/x/net/context" with "context"

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

**Special notes for your reviewer**:
As of Go 1.7 this package(golang.org/x/net/context) is available in the standard library under the name context. see (https://godoc.org/golang.org/x/net/context)

It is almost machinery replace. 

**Release note**:

```release-note
NONE
```
2018-03-23 16:34:23 -07:00
Ian Chakeres 42a605510d Updated e2e lv-provisioner image to v2.1.0 2018-03-23 06:32:01 -07:00
Luis Pabón 6970de0ece e2e:Enable CSI tests 2018-03-22 13:19:42 -07:00
Kubernetes Submit Queue d23066e8b3
Merge pull request #61373 from msau42/subpath-reconstruct
Automatic merge from submit-queue (batch tested with PRs 61453, 61393, 61379, 61373, 61494). 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>.

Use inner volume name instead of outer volume name for subpath directory

**What this PR does / why we need it**:
Fixes volume reconstruction for PVCs with subpath

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

**Special notes for your reviewer**:


**Release note**:

```release-note
ACTION REQUIRED: In-place node upgrades to this release from versions 1.7.14, 1.8.9, and 1.9.4 are not supported if using subpath volumes with PVCs.  Such pods should be drained from the node first.
```
2018-03-22 06:20:28 -07:00
hzxuzhonghu 70e45eccf2 Replace "golang.org/x/net/context" with "context" 2018-03-22 20:57:14 +08:00
Kubernetes Submit Queue 84ae63022d
Merge pull request #61021 from ianchakeres/e2e-lv-prov-mount-disc
Automatic merge from submit-queue (batch tested with PRs 60980, 61273, 60811, 61021, 61367). 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>.

Added e2e test for local volume provisioner discovery of new mountpoints while running.

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

This PR adds an e2e test for the local volume provisioner leveraging of the MountPropogation feature (https://github.com/kubernetes/kubernetes/pull/46444) to discover newly created mountpoints. The MountPropogation feature is now in beta (https://github.com/kubernetes/kubernetes/blob/master/pkg/features/kube_features.go#L146).

**Which issue(s) this PR fixes**:
Fixes https://github.com/kubernetes/kubernetes/issues/58416

**Special notes for your reviewer**:

```
KUBE_FEATURE_GATES="BlockVolume=true" NUM_NODES=1 go run hack/e2e.go -- --up

go run hack/e2e.go -- --test --test_args='--ginkgo.focus=PersistentVolumes-local.*Local.*volume.*provisioner'
```

**Release note**:
```release-note
NONE
```
2018-03-22 02:08:23 -07:00
Kubernetes Submit Queue d4e32379ca
Merge pull request #61181 from gnufied/refactor-disruptive-storage-tests
Automatic merge from submit-queue (batch tested with PRs 60793, 61181, 61267, 61252, 61334). 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 disruptive tests to use more volume types

Refactor storage disruptive tests to use different volume types. Also mark existing tests to be NFS specific. Fixes https://github.com/kubernetes/kubernetes/issues/61150

cc @jeffvance @jingxu97 



/sig storage

```release-note
None
```
2018-03-21 20:23:10 -07:00
Michelle Au 91c557f504 Use inner volume name instead of outer volume name for subpath directory 2018-03-21 17:13:38 -07:00
Kubernetes Submit Queue 9df57d2812
Merge pull request #60086 from dougm/vsphere-finder
Automatic merge from submit-queue (batch tested with PRs 59740, 59728, 60080, 60086, 58714). 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>.

vSphere: Minimize property collection via Finder

The 'All' parameter of the 'NewFinder' function controls property collection while searching the inventory.
When 'All' is set to 'false', Finder collects the minimal set of object properties required to search inventory.
When 'All' is set to 'true', Finder collects *all* object properties, which are *not* required to search inventory.
Setting 'All' to 'true' is only useful when inspecting all properties of an object,
such as by certain govc commands when the '-json' or '-dump' flags are specified.

Changing All=false in VCP minimizes the SOAP payload size and marshalling required on both sides, without impacting any functionality.



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

Changing All=false in VCP minimizes the SOAP payload size and marshalling required on both sides, without impacting any functionality.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-03-19 21:34:36 -07:00
Kubernetes Submit Queue 37b2edd855
Merge pull request #54300 from jsafrane/fix-test-images
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>.

Fix test images

These commits fix volume_io tests for iSCSI and Ceph RBD. Both server images were quite old (Fedora 22), so I updated them to ~~something more stable (CentOS 7) and to newer Ceph (Jewel, 10.2.7).~~ something newer (Fedora 26).

The most important fix is that the test volumes have 120 MB so volume_io test can actually run - the tests put 100MB file to the volume to check its persistence.

When mount containers in #53440 are merged I'll try to run the tests regularly with every PR (or merge) so we catch regressions quickly.

```release-note
NONE
```

/sig testing
/sig storage

/assign @jeffvance 

Fixes: #56725
2018-03-19 20:34:22 -07:00
Hemant Kumar b85c4fc57a Refactor disruptive tests to use more volume types 2018-03-16 11:49:22 -04:00
Cheng Xing fe76c9f779 Fixes 'Zone is empty' errors in PD upgrade tests; skips pd tests with inline volume in multizone clusters 2018-03-15 15:00:13 -07:00
Kubernetes Submit Queue 32343b7f3d
Merge pull request #61111 from jsafrane/fix-subpath-multizone
Automatic merge from submit-queue (batch tested with PRs 61111, 61069). 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>.

Fix subpath e2e tests on multizone cluster.

Use dynamically provisioned PV to run GCE PD tests. This will make sure that the pod is scheduled to the right zone and GCE PD can be attached to a node.

**Which issue(s) this PR fixes**:
Fixes #61101 


**Release note**:

```release-note
NONE
```
/sig storage
@msau42 @verult
2018-03-13 14:06:47 -07:00
Jan Safranek c44e135442 Fix subpath e2e tests on multizone cluster.
Use dynamically provisioned PV to run GCE PD tests. This will make sure
that the pod is scheduled to the right zone and GCE PD can be attached
to a node.
2018-03-13 14:26:37 +01:00
Jordan Liggitt 806f6772c6
Add atomic writer subpath e2e tests 2018-03-13 08:53:50 -04:00