Commit Graph

25248 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
f6ba25fdbd Merge pull request #119026 from AxeZhan/sleepAction
Introducing Sleep Action for PreStop Hook
2023-10-16 21:19:44 +02:00
Dejan Pejchev
f2b723a130 fix: improve assertion for Failed PodReplacementPolicy integration test cases 2023-10-16 21:16:17 +02:00
Jefftree
b30c6bdff8 Fix v3 spec 2023-10-16 15:05:13 -04:00
Kubernetes Prow Robot
e196d24910 Merge pull request #121243 from ii/fix-pv-pvc-status-test
Fix PersistentVolumeStatus & PersistentVolumeClaimStatus e2e test flake
2023-10-16 19:07:39 +02:00
carlory
5d0f8530f6 fix Huge Pages failing test 2023-10-16 23:13:32 +08:00
charles-chenzz
7d31b5ffd0 Add test case for sandbox condition if pod fails to mount volume from a missing secret 2023-10-16 22:04:04 +08:00
Kevin Hannon
dd9c3358f5 Revert "podresources: e2e: force eager connection" 2023-10-16 09:46:04 -04:00
bzsuni
27abf99148 Remove GA featuregate about ProbeTerminationGracePeriod in 1.29
Signed-off-by: bzsuni <bingzhe.sun@daocloud.io>
2023-10-16 20:12:47 +08:00
upodroid
011c65e17e configure npd to run as daemonset on cos 2023-10-16 12:34:47 +01:00
upodroid
e69a960792 skip deploying csi driver if it is already installed 2023-10-16 12:32:27 +01:00
Kubernetes Prow Robot
4254a77c21 Merge pull request #121249 from pohly/klog-call-fixes
fix invalid log calls
2023-10-16 13:14:01 +02:00
Patrick Ohly
957adfac49 fix invalid log calls
These were found with a modified klog that enables "go vet" to check klog call
parameters:

    cmd/kubeadm/app/features/features.go:149:4: printf: k8s.io/klog/v2.Warningf format %t has arg v of wrong type string (govet)
    			klog.Warningf("Setting deprecated feature gate %s=%t. It will be removed in a future release.", k, v)
    test/images/sample-device-plugin/sampledeviceplugin.go:147:5: printf: k8s.io/klog/v2.Errorf does not support error-wrapping directive %w (govet)
    				klog.Errorf("error: %w", err)
    test/images/sample-device-plugin/sampledeviceplugin.go:155:3: printf: k8s.io/klog/v2.Errorf does not support error-wrapping directive %w (govet)
    		klog.Errorf("Failed to add watch to %q: %w", triggerPath, err)
    staging/src/k8s.io/code-generator/cmd/prerelease-lifecycle-gen/prerelease-lifecycle-generators/status.go:207:5: printf: k8s.io/klog/v2.Fatalf does not support error-wrapping directive %w (govet)
    				klog.Fatalf("Package %v: unsupported %s value: %q :%w", i, tagEnabledName, ptag.value, err)
    staging/src/k8s.io/legacy-cloud-providers/vsphere/nodemanager.go:286:3: printf: (k8s.io/klog/v2.Verbose).Infof format %s reads arg #1, but call has 0 args (govet)
    		klog.V(4).Infof("Node %s missing in vSphere cloud provider cache, trying node informer")
    staging/src/k8s.io/legacy-cloud-providers/vsphere/nodemanager.go:302:3: printf: (k8s.io/klog/v2.Verbose).Infof format %s reads arg #1, but call has 0 args (govet)
    		klog.V(4).Infof("Node %s missing in vSphere cloud provider caches, trying the API server")
2023-10-16 10:21:07 +02:00
Shiming Zhang
33f2d487e2 Promote KEP-2681 to beta in 1.29 2023-10-16 10:10:35 +08:00
jinye
e20ecbe1b4 cleanup:e2e-cloud:stop using deprecated framework.ExpectNotEqual 2023-10-16 09:24:26 +08:00
bzsuni
5683660830 remove deprecated framework.ExpectNotEqual for node
Signed-off-by: bzsuni <bingzhe.sun@daocloud.io>
2023-10-16 09:21:26 +08:00
Stephen Heywood
b548bbb8cf When reading pvc status allow bound to be a valid value 2023-10-16 10:20:26 +13:00
AxeZhan
332779a3b2 add a simple e2e test 2023-10-15 13:59:46 +08:00
Kubernetes Prow Robot
378866edba Merge pull request #120518 from saschagrunert/metrics-container-start
kubelet: fix metric `container_start_time_seconds` timestamp
2023-10-15 07:05:37 +02:00
Kubernetes Prow Robot
4d8a51acac Merge pull request #121229 from aojea/remove_cluster_cidr
remove ClusterCIDR alpha API
2023-10-15 02:56:33 +02:00
Kubernetes Prow Robot
675a64eaa6 Merge pull request #121129 from carlory/cleanup-e2e-framework-equal
remove deprecated framework.ExpectEqual
2023-10-14 23:50:37 +02:00
Kubernetes Prow Robot
ae9dc3330e Merge pull request #120874 from ruquanzhao/fixDevicePluginProbeCI
fix DevicePluginProbe node-e2e: pod and kubelet restarts
2023-10-14 23:50:28 +02:00
Antonio Ojea
c2d473f0d4 remove ClusterCIDR
KEP-2593 proposed to expand the existing node-ipam controller
to be configurable via a ClusterCIDR objects, however, there
were reasonable doubts on the SIG about the feature and after
several months of dicussions we decided to not move forward
with the KEP intree, hence, we are going to remove the existing
code, that is still in alpha.

https://groups.google.com/g/kubernetes-sig-network/c/nts1xEZ--gQ/m/2aTOUNFFAAAJ

Change-Id: Ieaf2007b0b23c296cde333247bfb672441fe6dfc
2023-10-14 19:06:22 +00:00
Kubernetes Prow Robot
b87cae907d Merge pull request #121001 from jiahuif-forks/feature/validating-admission-policy/typed-composition-variables
ValidatingAdmissionPolicy: typed variables support.
2023-10-14 01:55:43 +02:00
Kevin Hannon
1ae5429629 add potential fixes for flakiness in eviction tests 2023-10-13 11:36:44 -04:00
cpanato
b0c7956a86 Bump distroless-iptables to v0.4.1
Signed-off-by: cpanato <ctadeu@gmail.com>
2023-10-13 11:00:04 +02:00
carlory
a34d2f3b13 fix limitrange flaky test 2023-10-13 11:46:05 +08:00
Kubernetes Prow Robot
4c8fca2f06 Merge pull request #112894 from pohly/e2e-framework-test-labels
e2e framework: test labels
2023-10-13 02:40:43 +02:00
Kubernetes Prow Robot
2b4ef19578 Merge pull request #121191 from dims/update-busybox-sha-based-image-to-match-tag-1.36-1-1
Update busybox SHA based image to match tag - 1.36.1-1
2023-10-12 22:49:43 +02:00
Kubernetes Prow Robot
8923c3c871 Merge pull request #119659 from kannon92/beta-pod-ready-to-start
[KEP-3085] Promote PodReadyToStartContainers to beta in 1.29
2023-10-12 22:49:16 +02:00
Davanum Srinivas
968d6b8a32 Update busybox SHA based image to match tag - 1.36.1-1
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-10-12 14:17:36 -04:00
Kubernetes Prow Robot
3bd4c1cf20 Merge pull request #120892 from ii/create-pv-pvc-status-test
Write e2e test for PersistentVolumeStatus & PersistentVolumeClaimStatus Endpoints +6 Endpoints
2023-10-12 18:50:33 +02:00
Kevin Hannon
c94240e2e2 move kubelet constant for podreadytostart to staging 2023-10-12 11:18:11 -04:00
Kubernetes Prow Robot
38a1ec75f0 Merge pull request #119882 from ffromani/podres-client-wait
podresources: e2e: force eager connection
2023-10-12 15:59:55 +02:00
Davanum Srinivas
de01788dea Switch to newer cos-gpu-installer - v2.1.9
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-10-12 06:59:39 -04:00
Hao Ruan
531324cb1d allow FSGroupPolicy and PodInfoOnMount to be mutable in CSIDriver.Spec 2023-10-12 15:01:37 +08:00
Davanum Srinivas
5ad5ef1d0f Switch to newer cos-gpu-installer - v2.1.7
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-10-11 23:15:51 -04:00
Kubernetes Prow Robot
5027809be8 Merge pull request #119479 from HirazawaUi/implement-secrets-empty-value-test
implement secret empty string value integration test
2023-10-12 00:51:13 +02:00
Kubernetes Prow Robot
dc1cde6e02 Merge pull request #121044 from charles-chenzz/e2e_pod_readytostart_false
[KEP-3085]: check PodReadyToStartContainers condition after gracefulshutdown
2023-10-11 20:29:32 +02:00
cpanato
5eb7fea383 [go] Bump images, dependencies and versions to go 1.21.3
Signed-off-by: cpanato <ctadeu@gmail.com>
2023-10-11 17:08:26 +02:00
Arda Güçlü
a504aed54d Add shortname ambiguity warning in shortcut expander (#117668)
* Add warning handler callback function in shortcut expander

Currently, errors in client-go are propagated back to the callers via
function returns. However, there is no elegant way for just warning users.
For example, when user wants to get a resource with it's short name format
and if there are multiple resources belonging to this short name, we need to
warn user about this ambugity which one is picked and which ones are discarded.

Not only to overcome this particular case mentioned above, but also propose a
way for the possible warnings in the future, this commit adds a warningHandler
callback function in shortcutExpander.

* Add warningPrinter functionality in ConfigFlags

ConfigFlags has neither warning user in a standardized
format functionality nor passing warning callback functions to other upper level
libraries such as client-go.

This commit adds an ability that user can set warningPrinters
according to their IOStreams and this warningPrinters will be used
to raise possible warnings happening not only in cli-runtime but
also in client-go.

* Pass warning callback function in ConfigFlags to shortcutExpander

This commit passes warning callback function to print possible
warnings happened in shortcut expander to warn user in a
standardized format.

* Add integration test for CRDs having ambiguous short names

This commit adds integration test to assure that warning message
related to this ambiguity is printed when resources are being retrieved via their short name
representations in cases where multiple resources have same
short names.

This integration test also ensures that the logic behind which resource
will be selected hasn't been changed which may cause disperancies in
clusters.

* Remove defaultConfigFlag global variable

* Move default config flags initialization into function

* Skip warning for versions of same group/resource

* Run update-vendor

* Warn only once when there are multiple versions registered for ambiguous resource

* Apply gocritic review

* Add multi-resource multi-version ambiguity unit test
2023-10-11 17:04:11 +02:00
wlq1212
d9545976ed using wait.Interrupted instead of deprecated wait.ErrWaitTimeout for utils 2023-10-11 19:30:14 +08:00
carlory
2c1836bc24 remove deprecated framework.ExpectEqual 2023-10-11 12:43:10 +08:00
RuquanZhao
babac47c6f fix DevicePluginProbe node-e2e: pod and kubelet restarts
The kubelet restarts working pods with an exponential back-off delay,
with a maximum cap of 5 minutes. The waiting 1 minutes may happen to be
in back-off time.

Signed-off-by: Ruquan Zhao <ruquan.zhao@arm.com>
2023-10-11 10:15:32 +08:00
Kubernetes Prow Robot
bdcb73d6b3 Merge pull request #120460 from tzneal/deflake-oom-tests-on-containerd
skip the reason check for OOM reason test if it will fail
2023-10-11 01:03:17 +02:00
Patrick Ohly
19ecf93ec3 e2e: define features and node features
The list is based on the -list-tests output.
2023-10-10 18:15:49 +02:00
Patrick Ohly
f2d34426f8 e2e: enhance SIGDescribe
framework.SIGDescribe is better because:
- Ginkgo uses the source code location of the test, not of the wrapper,
  when reporting progress.
- Additional annotations can be passed.

To make this a drop-in replacement, framework.SIGDescribe generates a function
that can be used instead of the former SIGDescribe functions.

windows.SIGDescribe contained some additional code to ensure that tests are
skipped when not running with a suitable node OS. This gets moved into a
separate wrapper generator, to allow using framework.SIGDescribe as intended.
To ensure that all callers were modified, the windows.sigDescribe isn't
exported anymore (wasn't necessary in the first place!).
2023-10-10 18:15:49 +02:00
Patrick Ohly
39b6916cbc e2e: add wrapper functions to annotate tests
These wrapper functions set labels in addition to injecting the annotation into
the test text. It then becomes possible to select tests in different ways:

    ginkgo -v --focus="should respect internalTrafficPolicy.*\[FeatureGate:ServiceInternalTrafficPolicy\]"

    ginkgo -v --label-filter="FeatureGate:ServiceInternalTrafficPolicy"

    ginkgo -v --label-filter="Beta"

When a test runs, ginkgo shows it as:

    [It] should respect internalTrafficPolicy=Local Pod to Pod [FeatureGate:ServiceInternalTrafficPolicy] [Beta] [FeatureGate:ServiceInternalTrafficPolicy, Beta]

The test name and the labels at the end are in different colors. Embedding the
annotations inside the text is redundant and only done because users of the e2e
suite might expect it. Also, our tooling that consumes test results currently
doesn't know about ginkgo labels.

Environments, features and node features as described by
https://github.com/kubernetes/enhancements/tree/master/keps/sig-testing/3041-node-conformance-and-features
are also supported.

The framework and thus (at the moment) test/e2e do not have any pre-defined
environments and features. Adding those and modifying tests will follow in
a separate commit.
2023-10-10 18:15:49 +02:00
Patrick Ohly
535ab74346 e2e framework: track and report internal bugs
If something goes wrong during the test registration phase, the only solution
so far was to panic. This is not user-friendly and only allows to report one
problem at a time.

If initialization can continue, then a better solution is to record a bug,
continue, and then report all bugs together.

This also works when just listing tests. The new verify-e2e-suites.sh uses that
to check all test suites (identified as "packages that call
framework.AfterReadingAllFlags", with some exceptions) as part of
pull-kubernetes-verify.

Example output for a fake

    framework.RecordBug(framework.NewBug("fake bug during SIGDescribe", 0))

in test/e2e/storage/volume_metrics.go:
```
$ hack/verify-e2e-suites.sh
go version go1.21.1 linux/amd64
ERROR: E2E test suite invocation failed for test/e2e.
   ERROR: E2E suite initialization was faulty, these errors must be fixed:
   ERROR: test/e2e/storage/volume_metrics.go:49: fake bug during SIGDescribe
E2E suite test/e2e_kubeadm passed.
E2E suite test/e2e_node passed.
```
2023-10-10 18:15:46 +02:00
Patrick Ohly
3afdcc03ea e2e framework: list specs and labels
-list-tests is a more concise alternative for `ginkgo --dry-run` with one line
per test. In contrast to `--dry-run`, it really lists all tests. `--dry-run`
without additional parameters uses the default skip expression from the E2E
context, which filters out flaky and feature-gated tests. The output includes
the source code location where each test is defined. It is sorted by test
name (not source code location) because that order is independent of
reorganizing the source code and ordering by location can be achieved with
"sort".

-list-labels has no corresponding feature in Ginkgo.

One possible usage is to figure out what values might make sense for
-focus/skip/label-filter.

Unit tests will follow in a future commit.
2023-10-10 17:15:59 +02:00
Patrick Ohly
aa4d2fc5ed e2e storage: remove useless info message
Always printing "Enabling in-tree volume drivers" whenever the E2E suite is
initializing doesn't provide any useful information and makes output of the
upcoming -list-tests look weird.
2023-10-10 17:15:59 +02:00