Commit Graph

217 Commits

Author SHA1 Message Date
Jan Safranek
4bcb3cd34e Sync csi-hostpath manifests
Copy csi-hostpath driver manifests from
kubernetes-csi/csi-driver-host-path. It bumps version of all images to the
release shipped along Kubernetes 1.18.
2020-04-17 09:49:24 +02:00
Patrick Ohly
f117849582 mock tests: ResourceExhausted error handling in external-provisioner
The mock driver gets instructed to return a ResourceExhausted error
for the first CreateVolume invocation via the storage class
parameters.

How this should be handled depends on the situation: for normal
volumes, we just want external-scheduler to retry. For late binding,
we want to reschedule the pod. It also depends on topology support.
2020-04-07 13:09:31 +02:00
Jan Safranek
a4f080861f Test NodeStage error cases
Especially related to "uncertain" global mounts. A large refactoring of CSI
mock tests were necessary:
- to be able to script the driver to return errors as required by the test
- to parse the CSI driver logs to check kubelet called the right CSI calls
2020-04-06 15:03:22 +02:00
Patrick Ohly
c9004e704d e2e/storage: check result of WaitForPersistentVolumeDeleted
When deleting fails, the tests should be considered as failed,
too. Ignoring the error caused a wrong return code in the CSI mock
driver to go unnoticed (see
https://github.com/kubernetes-csi/csi-test/pull/250). The v3.1.0
release of the CSI mock driver fixes that.
2020-03-26 13:22:04 +01:00
Kubernetes Prow Robot
d88571833e
Merge pull request #88830 from msau42/update-pd
Update version of pd csi driver
2020-03-17 19:27:27 -07:00
Christian Huffman
c6fd25d100 Updated CSIDriver references 2020-03-06 08:21:26 -05:00
Michelle Au
86c9b8ef57 Update version of pd csi driver
Change-Id: I1e6858cb641eb1b30b06ac95abe6a83c5312632e
2020-03-04 18:51:47 -08:00
Jan Safranek
f96c75bca2 Bump csi-driver-host-path version to get fixed block snapshots 2020-03-02 15:22:32 +01:00
Jan Safranek
347d841948 Bump CSI hostpath driver
To get block cloning support
2020-02-28 10:45:43 +01:00
Kubernetes Prow Robot
86c8a23052
Merge pull request #88009 from davidz627/fix/pdVer
Update version of gcp-compute-persistent-disk-csi-driver used in in-tree tests
2020-02-25 18:32:26 -08:00
David Zhu
c6c0bb254a Update version of GCE PD CSI Driver deployed in tests 2020-02-25 13:25:05 -08:00
drfish
6e933199c9 Change line terminators from CRLF to LF 2020-02-14 09:55:45 +08:00
Maciej Szulik
82f97775b7
Remove kubectl run generators 2020-01-22 16:44:00 +01:00
Kubernetes Prow Robot
9bf218bf86
Merge pull request #86652 from YuikoTakada/fix_readme_testing-manifests
Fix link in readme
2020-01-16 06:12:23 -08:00
Michelle Au
d829d9b0fd Update hostpath and mock csi drivers with latest sidecars
Change-Id: Ib1db651a94e49bbfb609ac0470794a6b5d0726ec
2020-01-08 18:54:42 -08:00
YuikoTakada
78c0517691 fix link in readme 2019-12-27 07:32:37 +00:00
Jan Safranek
d3c562f7e0 Run all csi-hostpath containers as privileged
On systems with SELinux enabled, non-privileged containers can't access
data of privileged containers. Since the CSI driver socket is exposed
by a privileged container, all sidecars must be privileged too.
2019-12-05 13:02:53 +01:00
Boyil (Elliot) Li
cfa6f83427 Enable snapshottable e2e test for csi pd driver
- add csi pd driver manifests
- modify snapshottable test case
- fix tests of pod has to be created first for delay-binding PVC, otherwise PVC won't be bound
2019-11-15 15:46:48 -08:00
David Zhu
1f2588496d
Revert "Enable snapshot e2e test for csi pd driver" 2019-11-14 19:29:20 -08:00
Boyil (Elliot) Li
9b9562837f update pd csi driver controller manifests 2019-11-14 11:11:30 -08:00
Boyil (Elliot) Li
f7bba28dab Enable snapshottable e2e test for csi pd driver
- add pd driver manifests
- modify snapshottable test case
2019-11-14 10:27:39 -08:00
Kubernetes Prow Robot
77e110fcef
Merge pull request #84046 from bclau/tests/agnhost-guestbook-replacement
Tests/agnhost guestbook replacement
2019-11-14 08:29:34 -08:00
Kubernetes Prow Robot
c580a12c8e
Merge pull request #83568 from bertinatto/volume_limits_ga
Promote volume limits to GA
2019-11-12 11:50:22 -08:00
Claudiu Belu
e8d062bd4a tests: Replaces guestbook with agnhost equivalent
The redis version has been bumped to version 5.0.5, but the maximum version supported on
Windows is 3.2. This can lead to failing tests, the output and behaviour can be different
(see #80516). In order to prevent such failures, the amount of times the Redis image is
used can be reduced.

This commit uses the previously added agnhost guestbook subcommand as a replacement for the
Guestbook application created by the test "should create and stop a working application".

Adds AgnhostPrivate to test/utils/image/manifest. Some tests are trying to pull
the agnhost image from the private registry, meaning that we would need to
always build and push the agnhost image to both e2e and private registry
whenever we bump its version. Decoupling them would mean that we only need
to push the image to the e2e registry.
2019-11-12 07:23:04 -08:00
Kubernetes Prow Robot
897ce3073c
Merge pull request #84533 from davidz627/fix/deprecatedPath
Remove plugin watching of deprecated directory and CSI v0 support in accordance with deprecation policy
2019-11-12 04:48:20 -08:00
Fabio Bertinatto
bf0182b9d3 Update hostpath CSI driver manifest
This is required for promoting volume limits to GA. The new version of
the driver reports the max number of volumes it supports. Such number
should be specified as a CLI argument when starting the driver.
2019-11-12 09:43:54 +01:00
David Zhu
802fe12803 Remove plugin watching of deprecated directory {kubelet_root_dir}/plugins and support for CSI V0 in accordance with deprecation announcement in https://v1-13.docs.kubernetes.io/docs/setup/release/notes/ 2019-11-11 11:42:58 -08:00
Xing Yang
3324722e07 VolumeSnapshot CRD v1beta1: Enable VolumeSnapshotDataSource feature gate and update e2e tests 2019-11-11 02:34:24 +00:00
Jordan Liggitt
cb17a2b6a6 Fix run_pod_tests 2019-11-07 02:26:45 -05:00
Kubernetes Prow Robot
9731b51d23
Merge pull request #84501 from pohly/hostpath-dev-raw-block
e2e: share /dev with host in hostpath driver deployment
2019-10-29 08:22:43 -07:00
Patrick Ohly
327a12cd08 e2e: share /dev with host in hostpath driver deployment
This is needed for raw block volumes. It mirrors a change made in the upstream
deployment in https://github.com/kubernetes-csi/csi-driver-host-path/pull/109

Raw block volumes use loop devices under the hood. "losetup --find
--show" uses LOOP_CTL_GET_FREE to get a free loop device. It then
expects to have the corresponding /dev/loopX already available. When
/dev inside the container is a static tmpfs which doesn't already have
those /dev/loop* devices (*) the new device fails to show up,
resulting in:

I1028 13:25:19.937846       1 server.go:117] GRPC call: /csi.v1.Controller/CreateVolume
I1028 13:25:19.938083       1 server.go:118] GRPC request: {"accessibility_requirements":{"preferred":[{"segments":{"topology.hostpath.csi/node":"pmem-csi-pmem-govm-worker3"}}],"requisite":[{"segments":{"topology.hostpath.csi/node":"pmem-csi-pmem-govm-worker3"}}]},"capacity_range":{"required_bytes":5368709120},"name":"pvc-24985a49-5638-4bf6-b789-bb99a28d1073","volume_capabilities":[{"AccessType":{"Block":{}},"access_mode":{"mode":1}}]}
I1028 13:25:19.961124       1 volume_path_handler_linux.go:41] Creating device for path: /csi-data-dir/635c6569-f986-11e9-baa6-0242ac110004
I1028 13:25:20.391472       1 volume_path_handler_linux.go:75] Failed device create command for path: /csi-data-dir/635c6569-f986-11e9-baa6-0242ac110004 exit status 1 losetup: /csi-data-dir/635c6569-f986-11e9-baa6-0242ac110004: failed to set up loop device: No such file or directory
E1028 13:25:20.392916       1 server.go:121] GRPC error: rpc error: code = Internal desc = failed to create volume 635c6569-f986-11e9-baa6-0242ac110004: failed to attach device /csi-data-dir/635c6569-f986-11e9-baa6-0242ac110004: exit status 1

(*) It seems that the static tmpfs gets populated by Docker based on
what's currently on the host when the container starts. That would
explain why it worked in the Kubernetes Prow testing - the host must
have had enough loop devices already defined.
2019-10-29 08:52:12 +01:00
Patrick Ohly
aacac747a0 e2e storage: bump revision of sidecars and driver
This updates to the releases meant to be used with Kubernetes 1.16
except for external-snapshotter, which is kept at the more recent
2.0.0-rc1 which targets 1.17.

The new external-attacher v2.0.0 needs updated RBAC rules, copied
verbatim from the v2.0.0 release.
2019-10-28 20:21:55 +01:00
David Zhu
d1383aa28f Update GCE PD CSI Driver YAMLS to v0.6.0 for testing. Enable Raw Block tests 2019-10-25 15:18:48 -07:00
Michelle Au
1634ada147 remove hostnetwork from hostpath csi manifest 2019-10-18 18:14:17 -07:00
Kubernetes Prow Robot
cae9bbd059
Merge pull request #81358 from bclau/tests/replace-redis-image
tests: Replaces Redis image with Agnhost
2019-10-16 22:24:51 -07:00
Kubernetes Prow Robot
b622b15ad4
Merge pull request #79814 from k-toyoda-pi/e2e_add_kubectl_describe_cronjob
Add e2e test for kubectl describe cronjob
2019-09-26 13:02:34 -07:00
Claudiu Belu
b91aa9a5c3 tests: Replaces Redis image with Agnhost
Some tests are using the Redis image, but they do not explicitly need it.
This commit replaces the usage of the Redis image with the Agnhost image
in such test cases.
2019-09-09 00:25:18 -07:00
Matt Matejczyk
bd0691d159 Create LoadBalancer in nginx ingress tests
This should fix the nginx ingress test in private clusters.
See https://k8s-testgrid.appspot.com/sig-scalability-experiments#gce-private-cluster-correctness

Ref. https://github.com/kubernetes/kubernetes/issues/77538
2019-09-06 15:36:54 +02:00
toyoda
60d8bf4464 Add e2e test for kubectl describe cronjob 2019-09-05 17:08:09 +09:00
Patrick Ohly
cf125a2db3 e2e storage: enable testing of ephemeral inline volumes with hostpath CSI driver
We need the 1.2.0 driver for that because that has support for
detecting the volume mode dynamically, and we need to deploy a
CSIDriver object which enables pod info (for the dynamic detection)
and both modes (to satisfy the new mode sanity check).
2019-08-28 12:20:54 +02:00
Patrick Ohly
6c6930a088 e2e storage: synchronize .yaml files with latest upstream releases
This ensures that the files are in sync with:
   hostpath: v1.2.0-rc3
   external-attacher: v2.0.1
   external-provisioner: v1.3.0
   external-resizer: v0.2.0
   external-snapshotter: v1.2.0

driver-registrar/rbac.yaml is obsolete because only
node-driver-registrar is in use now and does not need RBAC rules.

mock/e2e-test-rbac.yaml was not used anywhere.

The README.md files were updated to indicate that these really are
files copied from elsewhere. To avoid the need to constantly edit
these files on each update, <version> is used as placeholder in the URL.
2019-08-28 12:18:36 +02:00
Fabio Bertinatto
81572e5254 Enable CSI e2e tests for volume expansion 2019-08-27 17:33:41 +02:00
Kubernetes Prow Robot
087aafc18d
Merge pull request #80568 from pohly/ephemeral-mode-check
ephemeral mode check
2019-08-26 11:53:40 -07:00
Kubernetes Prow Robot
273e9262bb
Merge pull request #80342 from draveness/feature/remove-critical-pod-annotation
feat: cleanup pod critical pod annotations feature
2019-08-15 07:20:34 -07:00
Kubernetes Prow Robot
95a5781b9d
Merge pull request #81304 from j-griffith/update_hostpathplugin_to_rc4
Update CSI hostpathplugin to include cloning fix
2019-08-14 12:46:11 -07:00
Patrick Ohly
7bbc06fcd4 storage: check CSIDriver.Spec.VolumeLifecycleModes
Using a "normal" CSI driver for an inline ephemeral volume may have
unexpected and potentially harmful effects when the driver gets a
NodePublishVolume call that it isn't expecting. To prevent that mistake,
driver deployments for a driver that supports such volumes must:
- deploy a CSIDriver object for the driver
- set CSIDriver.Spec.VolumeLifecycleModes such that it contains "ephemeral"

The default for that field is "persistent", so existing deployments
continue to work and are automatically protected against incorrect
usage.

For the E2E tests we need a way to specify the driver mode. The
existing cluster-driver-registrar doesn't support that and also was
deprecated, so we stop using it altogether and instead deploy and
patch a CSIDriver object.
2019-08-13 23:12:52 +02:00
Michelle Au
7c1f55f400 Update csi-provisioner and snapshotter to get selflink fix
Change-Id: I5aa44d5d530dad04968429369aff65e369a86e2e
2019-08-12 15:28:40 -07:00
j-griffith
11f14de6e2 Update CSI hostpathplugin to include cloning fix
Update to hostpathplugin:v1.2.0-rc4 to include storageClass comparison
fix.
2019-08-12 13:09:17 -06:00
draveness
495faa22db feat: cleanup pod critical pod annotations feature 2019-08-09 08:41:23 +08:00
Kubernetes Prow Robot
65e5439faf
Merge pull request #80991 from davidz627/fix/testMani
Add davidz627 to testing manfiests csi owners
2019-08-05 19:58:28 -07:00