Commit Graph

2698 Commits

Author SHA1 Message Date
Adrian Reber
da8ffcd1dc Switch 'ContainerCheckpoint' from Alpha to Beta
* Forensic Container Checkpointing as described in KEP 2008 moves from
   Alpha to Beta. This is corresponding code change.

 * Adapt e2e test to handle
   '(rpc error: code = Unimplemented desc = unknown method CheckpointContainer'
   and
   '(rpc error: code = Unimplemented desc = method CheckpointContainer not implemented)'
   and
   '(rpc error: code = Unknown desc = checkpoint/restore support not available)'
   One error message is if the CRI implementation does
   not implement the CRI RPC (too old) and the second is
   if the CRI implementation does explicitly not support the feature.
   The third error message can be seen if the container engine
   explicitly disabled the checkpoint/restore support,

 * As described in the corresponding KEP 2008 explicitly test for
   disabled functionality.

 * Extended test to look for the checkpoint kubelet metric.

 * Extended test to look for the CRI error metric.

 *  Add separate sub-resource permission to control permissions on
    the checkpoint kubelet API endpoint

Signed-off-by: Adrian Reber <areber@redhat.com>
2024-02-19 18:09:38 +00:00
Kubernetes Prow Robot
57e9981dc2 Merge pull request #122865 from pohly/e2e-framework-logging
e2e framework: unify logging, support skipping helpers
2024-02-01 09:37:02 -08:00
Davanum Srinivas
717a0002b7 [gce_runner] use metadata file when values have special characters
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2024-01-30 15:55:51 -08:00
Davanum Srinivas
4716bf8bd4 Fix issues found by linter
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2024-01-28 06:05:04 -05:00
Davanum Srinivas
76ea142051 Use gcloud for gce_runner
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2024-01-27 22:23:37 -05:00
Kubernetes Prow Robot
17ad610559 Merge pull request #121321 from charles-chenzz/fix_flaky_PodReadyToStartContainersCondition
[KEP - 3085] Add e2e test for PodReadyToStartContainerCondition when config map is created
2024-01-24 21:57:24 +01:00
charles-chenzz
367bbd01d7 update testcase on podreadytostartcontainercondition 2024-01-23 18:29:35 +06:00
Patrick Ohly
43539c855f e2e framework: unify logging, support skipping helpers
ginkgo.GinkgoHelper is a recent addition to ginkgo which allows functions to
mark themselves as helper. This then changes which callstack gets reported for
failures. It makes sense to support the same mechanism also for logging.

There's also no reason why framework.Logf should produce output that is in a
different format than klog log entries. Having time stamps formatted
differently makes it hard to read test output which uses a mixture of both.
Another user-visible advantage is that the error log entry from
framework.ExpectNoError now references the test source code.

With textlogger there is a simple replacement for klog that can be reconfigured
to let the caller handle stack unwinding. klog itself doesn't support that
and should be modified to support it (feature freeze).

Emitting printf-style output via that logger would work, but become less
readable because the message string would get quoted instead of printing it
verbatim as before. So instead, the traditional klog header gets reproduced
in the framework code. In this example, the first line is from klog, the second
from Logf:

    I0111 11:00:54.088957  332873 factory.go:193] Registered Plugin "containerd"
    ...
      I0111 11:00:54.987534 332873 util.go:506] >>> kubeConfig: /var/run/kubernetes/admin.kubeconfig

Indention is a bit different because the initial output is printed before
installing the logger which writes through ginkgo.GinkgoWriter.

One welcome side effect is that now "go vet" detects mismatched parameters for
framework.Logf because fmt.Sprintf is called without mangling the format
string. Some of the calls were incorrect.
2024-01-20 18:23:31 +01:00
Patrick Ohly
dd0cee4895 e2e node runner: remove dependency on e2e/framework
A stand-alone binary shouldn't import the test/e2e/framework, which is targeted
towards usage in a Ginkgo test suite. This currently works, but will break once
test/e2e/framework becomes more opinionated about how to configure logging.

The simplest solution is to duplicate the one short function that the binary
was calling in the framework.
2024-01-20 18:23:31 +01:00
Kevin Hannon
8a89a1f5a5 mark density tests as flaky 2024-01-18 09:50:39 -05:00
Kubernetes Prow Robot
7db7824d85 Merge pull request #122178 from saschagrunert/cni-plugins
Update cni-plugins to v1.4.0
2024-01-04 18:00:07 +01:00
Kubernetes Prow Robot
c147e507e8 Merge pull request #121729 from gjkim42/promote-sidecar-e2e-to-beta
Remove NodeAlphaFeature label from sidecar e2e tests
2024-01-04 17:59:03 +01:00
Kubernetes Prow Robot
88d497d401 Merge pull request #118626 from borg-land/use-e2-instance-types
Switch to e2 machine types
2024-01-04 16:49:14 +01:00
Sascha Grunert
1ae5594fb2 Update cni-plugins to v1.4.0
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2023-12-13 09:33:31 +01:00
ruiwen-zhao
ec9387da08 Remove scrape_error from resource_metrics_test due to deprecation
Signed-off-by: ruiwen-zhao <ruiwen@google.com>
2023-11-28 18:49:04 +00:00
Davanum Srinivas
64f8c6939f Replace -E with --setenv for systemd-run parameter
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-11-17 10:50:11 -05:00
Kevin Hannon
475bfa4a63 set LimitedSwap 2023-11-08 15:43:12 -05:00
Kubernetes Prow Robot
246d363ea4 Merge pull request #121700 from kannon92/fix-summary-more
missed a few summary upper limits for major page faults
2023-11-06 20:13:04 +01:00
Gunju Kim
1cd1092dd9 Remove NodeAlphaFeature label from sidecar e2e tests 2023-11-06 19:50:05 +09:00
Kubernetes Prow Robot
953afbb328 Merge pull request #121193 from sohankunkerkar/kubelet-config-dir
Retarget drop-in kubelet configuration dir feature to Alpha
2023-11-03 23:59:29 +01:00
Sohan Kunkerkar
ad7b9b56f5 test/e2e_node: add e2e test for Kubeletconfig drop-in dir
Signed-off-by: Sohan Kunkerkar <sohank2602@gmail.com>
Co-authored-by: Peter Hunt <pehunt@redhat.com>
2023-11-03 17:49:22 -04:00
Kubernetes Prow Robot
66e20ff891 Merge pull request #121394 from pohly/e2e-framework-test-labels
e2e: test labels
2023-11-03 17:35:03 +01:00
Kubernetes Prow Robot
6c64593ba1 Merge pull request #120616 from kannon92/kubelet-disk-api-changes
Kubelet disk api changes
2023-11-02 16:11:20 +01:00
Kevin Hannon
baebc376ff missed a few summary upper limits for major page faults 2023-11-02 10:26:43 -04:00
Kubernetes Prow Robot
4c54ff0e16 Merge pull request #121671 from kannon92/fix-swap-summary-failure
increase bounded limits for major page faults
2023-11-01 20:07:30 +01:00
Kevin Hannon
26923b91e8 implementation of split disk kep 2023-11-01 14:46:33 -04:00
Patrick Ohly
f2cfbf44b1 e2e: use framework labels
This changes the text registration so that tags for which the framework has a
dedicated API (features, feature gates, slow, serial, etc.) those APIs are
used.

Arbitrary, custom tags are still left in place for now.
2023-11-01 15:17:34 +01:00
Kevin Hannon
ecb32a3e29 increase bounded limits for major page faults 2023-11-01 09:57:37 -04:00
upodroid
e2227a24fb switch to e2 machine types 2023-10-31 21:46:14 +00:00
Kubernetes Prow Robot
ac6f707155 Merge pull request #120620 from tzneal/sidecar-termination-ordering
sidecars: terminate sidecars after main containers
2023-10-31 19:16:11 +01:00
Kubernetes Prow Robot
a5ff0324a9 Merge pull request #120461 from gjkim42/do-not-reuse-device-of-restartable-init-container
Don't reuse the device of a restartable init container
2023-10-31 19:15:53 +01:00
Kubernetes Prow Robot
2c300ef6b0 Merge pull request #120269 from gjkim42/fix-restart-containers-in-right-order-after-podsandbox-changed
Restart containers in right order with SidecarContainers enabled
2023-10-31 19:15:35 +01:00
Kubernetes Prow Robot
bfeb3c2621 Merge pull request #119447 from gjkim42/do-not-reuse-cpu-set-of-restartable-init-container
Don't reuse CPU set of a restartable init container
2023-10-31 19:15:26 +01:00
Sai Ramesh Vanka
8e52fc7266 Minor fix to copy the required kubelet, service logs after the execution of the node e2e tests
* It is observed in some of the periodic job results that the kubelet along with few other logs
are not getting copied to the artifacts directory once the node e2e tests are executed
* Following is the sample error log that is displayed once the tests are run
```
I1031 13:15:49.056897   40204 ssh.go:146] Running the command ssh, with args: [-o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o CheckHostIP=no -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o LogLevel=ERROR -i /home/svanka/.ssh/google_compute_engine core@35.185.108.51 -- sudo ls core@35.185.108.51:/tmp/node-e2e-20231031T125637/results/*.log]
E1031 13:16:15.346641   40204 ssh.go:149] failed to run SSH command: out: ls: cannot access 'core@35.185.108.51:/tmp/node-e2e-20231031T125637/results/*.log': No such file or directory
, err: exit status 2
```
* This change fixes the above issue and helps in gathering the required test artifacts once the tests execution is completed

Signed-off-by: Sai Ramesh Vanka <svanka@redhat.com>
2023-10-31 15:36:39 +05:30
Kubernetes Prow Robot
c7a7cb8e17 Merge pull request #121531 from saschagrunert/e2e-node-imageid
Make e2e node image ID test more flexible
2023-10-30 17:40:16 +01:00
Shiming Zhang
3a308140cd Fix e2e 2023-10-29 23:16:13 +08:00
Kubernetes Prow Robot
de4aa52171 Merge pull request #121476 from pohly/golangci-lint-update
golangci-lint v1.55.1
2023-10-27 17:43:21 +02:00
Ed Bartosh
69b9d50f9d e2e_node: mark CDI test as NodeSpecialFeature
This test depends on CDI support in a runtime and doesn't work
with the out-of-the box Containerd. Marking it as a NodeSpecialFeature
should fix Containerd CI job failures.
2023-10-27 02:06:43 +03:00
Patrick Ohly
6302f01121 e2e node: fix broken assertion
It looks like the test or the branch is never executed, because it wouldn't
pass: a []v1.NodeIP is value is never the same as []string. Found by the
upcoming ginkgolinter update.

    ERROR: test/e2e_node/pod_host_ips.go:167:45: ginkgo-linter: use Equal with different types: Comparing []k8s.io/api/core/v1.HostIP with []string; either change the expected value type if possible, or use the BeEquivalentTo() matcher, instead of Equal() (ginkgolinter)
    ERROR: 					gomega.Expect(p.Status.HostIPs).Should(gomega.Equal(nodeIPs))
    ERROR: 					                                       ^
2023-10-26 13:25:00 +02:00
Sascha Grunert
c6b42c8a72 Make e2e node image ID test more flexible
Container runtimes like CRI-O actually show the image identifier in the
`ImageID` field rather than the repo digest. For the digest we already
have the `Image` field. We still allow the digest in the `ImageID` field
for historic reasons.

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2023-10-26 11:07:12 +02:00
Kubernetes Prow Robot
3ae4dbd45f Merge pull request #121442 from swatisehgal/topology-mgr-test-fix
node: e2e: topology-mgr: Determine threads per core to disambiguage cores from cpus
2023-10-26 04:22:52 +02:00
Kubernetes Prow Robot
1662399131 Merge pull request #121506 from kwilczynski/fix/upstream/remove-dbus-restart-test
Remove problematic Dbus restart test
2023-10-26 01:08:41 +02:00
Kubernetes Prow Robot
a88dbd9269 Merge pull request #121440 from bart0sh/PR125-e2e-test-DevicePluginCDIDevices
e2e_node: test device plugin support of CDI devices
2023-10-26 01:08:23 +02:00
Krzysztof Wilczyński
2a8982b27b Remove problematic Dbus restart test
Signed-off-by: Krzysztof Wilczyński <kwilczynski@redhat.com>
2023-10-25 19:53:50 +09:00
Kubernetes Prow Robot
413b15a8d9 Merge pull request #120914 from kannon92/kubelet-disk-api-cri-update
Kubelet disk api cri update
2023-10-24 21:00:40 +02:00
Kubernetes Prow Robot
9aa04752e7 Merge pull request #118463 from testwill/replace_loop
chore: slice replace loop
2023-10-24 15:04:39 +02:00
Ed Bartosh
bbb4a88bbb e2e_node: implement DevicePluginCDIDevices test case 2023-10-24 12:35:33 +03:00
Kevin Hannon
8ae0d390d7 add container filesystem to CRI api
Co-authored-by: Mike Brown <brownwm@us.ibm.com>
2023-10-23 15:04:30 -04:00
Antonio Ojea
6d02fbdbe0 Revert "Promote KEP-2681 to beta in 1.29"
This reverts commit 33f2d487e2.
2023-10-23 13:19:17 +00:00
Swati Sehgal
fa83d5fef1 node: e2e: topology-mgr: Disambiguage cores from cpus
Currently in the tests there is ambiguity in terms of host setup
when it comes to cpus or cores. This commit disambiguates that.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2023-10-23 13:01:17 +01:00