Commit Graph

98 Commits

Author SHA1 Message Date
Yecheng Fu
d8c465c8d7 better HostExec
- separate stdout and stderr
- return command exit code
- remove kubectl dependency
2019-10-28 19:20:26 +08:00
Dan Winship
6a040438ea Update test/e2e/storage for new GetReadySchedulableNodes stuff 2019-10-09 08:12:56 -04:00
WanLinghao
a6f5d99409 Refactor and clean up e2e framework utils. This patch handles test/e2e/framework/pv_util.go file 2019-09-18 17:57:13 +08:00
carlory
910bd000ff use log functions of core framework in the 'test/e2e/storage/*' 2019-09-06 10:26:16 +08:00
alejandrox1
7c161d6a5f Refactoring pod related functions from pv_util to pod pkg
Moving pod related functions from e2e/framework/pv_util.go to
e2e/framework/pod in order to allow refactoring of pv_util.go into its
own package.

Signed-off-by: alejandrox1 <alarcj137@gmail.com>
2019-08-27 12:27:45 -04:00
Jan Safranek
d79b7c754f Add in-line filesystem volumes to MakeSecPod 2019-08-01 20:04:11 +00:00
draveness
4c2e77a53e feat: use framework.ExpectEqual in storage e2e test 2019-07-04 22:24:29 +08:00
goodluckbot
032dde8754 Refactor statefulset e2e tests 2019-06-25 11:33:58 +08:00
SataQiu
332be4b1e3 refactor: replace framework.Failf with e2elog.Failf 2019-06-19 17:52:35 +08:00
Jorge Alarcon Ochoa
4969a05327 Refactored pod-related functions from framework/util.go
This a refactoring of framework/utils.go into framework/pod.

Signed-off-by: Jorge Alarcon Ochoa <alarcj137@gmail.com>
2019-05-30 09:30:26 -04:00
SataQiu
01d38fec16 fix golint failures of test/e2e/storage 2019-05-11 23:30:17 +08:00
danielqsj
629ec7e113 replace test error checking with more readable way 2019-05-10 13:58:09 +08:00
danielqsj
1058877fbf remove dot imports in e2e/storage 2019-05-10 13:56:26 +08:00
John Schnake
a6f5ebf831 Move storage tests to use the framework/log package
This is part of the transition to using framework/log instead
of the Logf inside the framework package. This will help with
import size/cycles when importing the framework or subpackages.
2019-05-04 12:50:38 -05:00
Kubernetes Prow Robot
73c1e35491 Merge pull request #76174 from msau42/slow-e2es
Mark slow storage e2es
2019-04-04 19:37:19 -07:00
Michelle Au
ce7ac63916 Mark slow storage e2es 2019-04-04 18:01:22 -07:00
Kenichi Omichi
542b07cd6a Use framework.ExpectNoError() for e2e/storage
The e2e test framework has ExpectNoError() for readable test code.
This replaces Expect(err).NotTo(HaveOccurred()) with it for e2e/storage.
2019-04-02 16:20:35 +00:00
Kubernetes Prow Robot
d99979f8b5 Merge pull request #75015 from cofyc/fix73168-disable-temporarily
Disable "should set different fsGroup for second pod if first pod is deleted" temporarily
2019-03-06 04:46:10 -08:00
Yecheng Fu
05fe7094d5 Disable "should set different fsGroup for second pod if first pod is deleted" test temporarily 2019-03-06 10:46:17 +08:00
Yecheng Fu
a81b351670 Update persistent_volumes-local.go to use utils.HostExec/utils.LocalTestResourceManager.
This simplifies the code and makes it more maintainable.
2019-03-02 20:38:20 +08:00
Yecheng Fu
1bfd3838e2 Add new e2e test for local PV "Pods sharing a single local PV [Serial]" 2019-02-28 17:22:23 +08:00
Claudiu Belu
00e2582c67 Adds Windows-related Networking tests
Creating pods with HostNetwork is not currently supported on
Windows Kubelet, and thus, ones without HostNetwork are created instead.
2019-02-06 15:58:18 -08:00
Yecheng Fu
1660a0d260 Fix bug 2019-01-29 11:42:18 +08:00
Yecheng Fu
513ae63bf6 Add a new stress test to replace old provisioner stress test 2019-01-23 13:49:41 +08:00
Yecheng Fu
b7a33511e5 Clean up local volum provisioner e2e tests 2019-01-23 11:02:12 +08:00
Yecheng Fu
e3bca51a57 Do not check events in e2e tests
events can be throttled and should not be used to validate failure
conditions in e2e tests
2019-01-22 18:24:29 +08:00
Jordan Liggitt
fd9e9b01b1 Remove uses of extensions/v1beta1 clients 2018-12-19 11:18:53 -05:00
Weibin Lin
842bd1e1ec update deployment, daemonset, replicaset, statefulset to apps/v1 2018-12-19 10:46:45 -05:00
Matthew Wong
0c671b1211 Remove [Feature:BlockVolume] everywhere 2018-11-16 13:38:59 -05:00
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
5fdad5c19f Merge pull request #68771 from liyongxin/master
typo fix from utilites to utilities
2018-11-03 16:50:28 -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
Michelle Au
b1594f3cd1 Move storage tests that take longer than 2 minutes to slow suite 2018-09-20 15:29:00 -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
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
Michelle Au
07ebe323fa Fix gce localssd pv tests 2018-09-05 18:25:47 -07:00
Michelle Au
8091c7975b Integration and e2e tests 2018-09-04 16:30:14 -07:00
NickrenREN
5bc823f141 fix and update local volume e2es 2018-09-03 13:35:23 +08: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
Manjunath A Kumatagi
1f7f33aaa4 Update the nginx image from hub.docker.com 2018-08-04 05:19:53 +05:30
stewart-yu
736694e6ad fix wrong output in e2e log 2018-07-28 14:39:12 +08: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
Yecheng Fu
c3715da13f Add local volume pod affinity tests. 2018-07-08 02:36:49 +00:00
Yecheng Fu
1fbc5babb5 Prepare local volumes via hostexec pod. 2018-06-26 13:18:55 +08: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
AdamDang
cf50026886 Typo fix in the returen message: dynamicly->dynamically
dynamicly->dynamically
2018-05-16 01:18:43 +08: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
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