Commit Graph

139 Commits

Author SHA1 Message Date
Mikko Ylinen
3128b1a773 e2e: use user provided timeout in WaitForPodsWithLabelRunningReady
The WaitFor* refactoring in 07c34eb400 had an oversight what timeout parameter
is used for calling WaitForAllPodsCondition() in WaitForPodsWithLabelRunningReady()
so the calls to WaitForPodsWithLabelRunningReady() ended up ignoring the user
provided timeout. Fix that.

Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com>
2022-08-18 12:05:06 +03:00
Giuseppe Scrivano
9e9b23fd3c
pkg/apis, staging: add HostUsers to pod spec
It is used to request that a pod runs in a unique user namespace.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
Co-authored-by: Rodrigo Campos <rodrigoca@microsoft.com>
2022-08-02 23:47:58 +02:00
Tim Allclair
b289c23394 [e2epod] wait: Don't override non-timeout errors 2022-07-29 17:11:50 -07:00
Tim Allclair
55ec0f2d9d [e2epod] wait: Don't retry on 50X errors 2022-07-29 14:56:33 -07:00
Dave Chen
f792256954 e2e: adapt output tests to Ginkgo v2 and Gomega 1.19
Full stack traces are on by default. The approach for collecting results is
different. Tests run in their own goroutine, therefore runTests is no longer
part of their callstack. To cover stack traces with more than one entry, a new
test case gets added with a separate helper function.

Gomega object formatting now includes the type.

This removes the last remaining reference to Ginkgo v1.

Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-08 10:46:11 +08:00
Dave Chen
857458cfa5 update ginkgo from v1 to v2 and gomega to 1.19.0
- update all the import statements
- run hack/pin-dependency.sh to change pinned dependency versions
- run hack/update-vendor.sh to update go.mod files and the vendor directory
- update the method signatures for custom reporters

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-08 10:44:46 +08:00
Dave Chen
852f166960 Fix the failure of testcase TestFailureOutput
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-06-29 11:47:18 +08:00
Kubernetes Prow Robot
ca630bc118
Merge pull request #109828 from pohly/polling-failures
[E2E] enhance pod polling failures
2022-06-03 18:08:31 -07:00
Patrick Ohly
f02c72eaf9 pods: more tolerant checking of poll tests
Under load we might skip some of the poll events, leading to less output. Now
we expect only at least one output line for polling.
2022-06-03 13:41:11 +02:00
Patrick Ohly
2b299526b2 e2e: include more information in pod timeout error
The advantage is that the extra error information is guaranteed to be printed
directly before the failure and we avoid one extra log line that would have to
be correlated with the failure.
2022-06-03 13:41:05 +02:00
Patrick Ohly
8e79f4ce27 e2e: make failure message for unexpected errors more readable
The failure message from Gomega was hard to read because explanation and error
text were separated by the error dump. In many cases, that error dump doesn't
add any relevant information.

Now the error is dumped first as info message (just in case that it is
relevant) and then a shorter failure message is created from explanation and
error text.
2022-06-03 13:41:02 +02:00
Patrick Ohly
486744e814 e2e: test output of e2epod wait
Both output during the test and the failure message are covered.
2022-06-03 11:03:16 +02:00
James Sturtevant
061b8e8049 RunAsUser causes pods to not start on Windows 2022-05-27 09:31:39 -07:00
Tim Allclair
ccc69b1e9a Add MixinRestrictedPodSecurity e2e util 2022-05-24 16:10:16 -07:00
Tim Allclair
ab29782d24 Use typed ImageID for imageutils images 2022-05-12 08:51:07 -07:00
Tim Allclair
07c34eb400
[E2E] Refactor pod polling functions (WaitForX) (#109704)
* Clean up WaitFor Pod functions

* Handle retryable errors when polling

* Log more context on timeout

* #squash Address PR feedback
2022-05-05 01:42:32 -07:00
Kubernetes Prow Robot
7d3fd15200
Merge pull request #108409 from 249043822/br-e2e-ciro
Add pod status info log for e2e creating pods failure
2022-05-03 18:23:19 -07:00
Kubernetes Prow Robot
a315ec3388
Merge pull request #108590 from claudiubelu/tests/enable-windows-tests
tests: Enables a few Conformance tests for Windows (part 1)
2022-04-04 08:56:11 -07:00
Sergiusz Urbaniak
373c08e0c7
test/e2e/framework: configure pod security admission level for e2e tests 2022-03-28 15:42:10 +02:00
ravisantoshgudimetla
82f701aae2 pod admission test 2022-03-22 14:58:27 -04:00
Claudiu Belu
87123c49a0 tests: Enables a few Conformance tests for Windows
Some of these tests could not be run previously, especially on Windows
Docker containers. But now, by using Windows Containerd, we can finally
run them:

- HostNetwork=true tests: This can now be enabled on Windows Privileged Containers.
- /etc/hosts related tests: These were not supported because it required single
  file mappings, which is possible in Containerd.
- termination message as non-root user: Requires RunAsUsername, and single file
  mappings.
2022-03-06 09:36:39 -08:00
ZhangKe10140699
34c90a4014 Add pod status info log for e2e creating pods 2022-03-01 18:20:47 +08:00
ahrtr
fe95aa614c io/ioutil has already been deprecated in golang 1.16, so replace all ioutil with io and os 2022-02-03 05:32:12 +08:00
Kubernetes Prow Robot
51b94de68f
Merge pull request #105451 from claudiubelu/tests/log-pod-logs
tests: Fetch the pod logs in failed cases
2021-11-18 13:33:36 -08:00
Claudiu Belu
afb8569620 tests: Fetch the pod logs in failed cases
For some test failures, checking the pod logs could potentially
yield some interesting information, which could be used to further
investigate certain failures / flakes (for example, if there are some
networking issues, we could at least see if requests reach the containers,
(agnhost logs the connections / requests), or if there were any
other issues during the container's startup).
2021-11-03 11:10:26 -07:00
Lee Verberne
da8ddb7485 Create node_e2e test for ephemeral containers 2021-09-27 13:13:33 +02:00
pacoxu
ddaa3466eb correct unsafe sysctls e2e test case & use status reason check instead of events watch
Signed-off-by: Paco Xu <paco.xu@daocloud.io>
2021-08-18 15:11:09 +08:00
Kubernetes Prow Robot
ed5618e2d5
Merge pull request #104061 from aojea/waitForPodsReady
replace e2e WaitForPodsReady by WaitTimeoutForPodReadyInNamespace
2021-08-05 08:18:24 -07:00
Kubernetes Prow Robot
4470fc0ad9
Merge pull request #103776 from aojea/cleanup-e2e
Cleanup e2e
2021-08-04 23:41:00 -07:00
Antonio Ojea
34f4959633 replace e2e WaitForPodsReady by WaitTimeoutForPodReadyInNamespace 2021-08-01 19:24:52 +02:00
Jing Xu
33feaee2c2 Fix windows storage tests
1. fix command empty issue for some Windows storage tests
2. enable more windows storage tests by adding ntfs test patten

Change-Id: Ic33be282d669a23107474a14d4368bbf95c9b459
2021-07-20 22:40:20 -07:00
Antonio Ojea
50b3cbe999 e2e: remove unused sync.WaitGroup 2021-07-19 18:24:03 +02:00
Kubernetes Prow Robot
a331cf74b7
Merge pull request #102050 from pohly/fix/deflake-metrics-proxy
remove metrics proxy
2021-07-02 12:30:10 -07:00
Mauricio Poppe
ee34cd640a enable gcpdcsi multivolume tests with windows nodes 2021-06-22 18:27:50 +00:00
Patrick Ohly
5e9076da93 e2e: grab controller and scheduler metrics via port forwarding
The previous approach with grabbing via a nginx proxy had some
drawbacks:
- it did not work when the pods only listened on localhost (as
  configured by kubeadm) and the proxy got deployed on a different
  node
- starting the proxy raced with starting the pods, causing
  sporadic test failures because the proxy was not set up
  properly unless it saw all pods when starting the e2e.test
- the proxy was always started, whether it is needed or not
- the proxy was left running after a test and then the next
  test run triggered potentially confusing messages when
  it failed to create objects for the proxy

The new approach is similar to "kubectl port-forward" + "kubectl get
--raw". It uses the port forwarding feature to establish a TCP
connection via a custom dialer, then lets client-go handle TLS and
credentials.

Somehow verifying the server certificate did not work. As this
shouldn't be a big concern for E2E testing, certificate checking gets
disabled on the client side instead of investigating this further.
2021-06-16 12:02:40 +02:00
Konstantin Misyutin
351f4e9c9c cleanup: remove TODO at e2e scheduling preemption test
Signed-off-by: Konstantin Misyutin <konstantin.misyutin@huawei.com>
2021-05-19 17:34:50 +08:00
Kubernetes Prow Robot
7563d3092e
Merge pull request #96216 from knight42/refactor/disable-insecure-port-in-ctrler-mgr
refactor: disable insecure serving in controller-manager
2021-05-10 13:49:36 -07:00
Jing Xu
5e5a3ce85a Fix multivolume access tests for Windows
Fix issue for multivolume access tests

Change-Id: I7e00d8bfe9682540b60b5998f78f2a48550934af
2021-05-07 10:53:40 -07:00
Jian Zeng
c4c2574778
refactor(e2e): grab metrics from controller-manager via nginx
Signed-off-by: Jian Zeng <zengjian.zj@bytedance.com>
2021-05-03 00:12:06 +08:00
Fabio Bertinatto
6a645592fc e2e: MakePod() should support block and inline volumes 2021-04-21 11:29:35 +02:00
Kubernetes Prow Robot
bcab4c35d2
Merge pull request #100540 from mauriciopoppe/remove-selinuxoptions
Remove SELinuxOptions double setup in pod spec
2021-03-24 18:01:28 -07:00
Mauricio Poppe
d9c4d8bff8 remove selinuxoptions because it's configured before 2021-03-24 18:58:54 +00:00
Kubernetes Prow Robot
0fecc01567
Merge pull request #100300 from DangerOnTheRanger/reboot-flake-fix
Fix E2E node reboot test flake
2021-03-18 16:30:36 -07:00
Kermit Alexander
81040d386f Return last pod error when apierrors.IsNotFound returns true in WaitForPodCondition. 2021-03-18 00:53:26 +00:00
Kermit Alexander
3213e36430 Always check passed podCondition in WaitForPodCondition. 2021-03-17 23:14:29 +00:00
Kermit Alexander
c2aa40ca13 Do not early exit if pod is not found in WaitForPodCondition. 2021-03-16 14:44:19 +00:00
Kubernetes Prow Robot
bd23f4ff1e
Merge pull request #99888 from mauriciopoppe/storage-windows-tests
Refactor on windows e2e storage related tests
2021-03-15 19:40:34 -07:00
Mauricio Poppe
5d9053014e Update tests to use common pod functions from framework/pod/utils.go 2021-03-11 07:25:56 +00:00
Matthias Bertschy
b203fb0565 Deflake e2e test for startupProbe 2021-03-06 14:43:45 +01:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00