Commit Graph

503 Commits

Author SHA1 Message Date
Davanum Srinivas
43f523d405
Switch to sigs.k8s.io/yaml from ghodss/yaml
Change-Id: Ic72b5131bf441d159012d67a6a3d87088d0e6d31
2018-11-07 13:17:32 -05: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
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
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
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