Commit Graph

20354 Commits

Author SHA1 Message Date
ravisantoshgudimetla
283b176102 [test]: modify integration tests to use v1beta3 2021-10-07 10:58:07 -04:00
Swati Sehgal
5043b431b4 excludesharedpool: e2e tests: Test cases for pods with non-integral CPUs
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2021-10-07 15:39:41 +01:00
Swati Sehgal
42dd01aa3f excludesharedpool: e2e tests: code refactor to handle non-integral CPUs
This patch changes cpuCount to cpuRequest in order to cater to cases
where guaranteed pods make non-integral CPU Requests.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2021-10-07 15:39:40 +01:00
Kubernetes Prow Robot
c4d802b0b5 Merge pull request #103289 from AlexeyPerevalov/DoNotExportEmptyTopology
podresources: do not export empty NUMA topology
2021-10-07 07:11:46 -07:00
Yaakov Selkowitz
acaa24b254 Enable more test images for s390x 2021-10-07 01:25:55 -04:00
Yaakov Selkowitz
82920d99f8 Fix build of apparmor-loader test image
apparmor is no longer found in Alpine edge/testing but in
edge/community, presumably in preparation for full-fledged inclusion in
3.15.  If so, once that is released, BASEIMAGE can be updated again and
the explicit --repository flag to 'apk add' dropped.

Fixes: https://github.com/kubernetes/kubernetes/issues/105528
2021-10-07 01:25:49 -04:00
Kubernetes Prow Robot
79ee735bad Merge pull request #105337 from Huang-Wei/pr-105303
sched: integration test to cover event registration
2021-10-06 19:53:56 -07:00
Kubernetes Prow Robot
c20ff9839e Merge pull request #97045 from claudiubelu/tests-windows-containerd-enabled
tests: Enable some [LinuxOnly] tests for Windows Containerd
2021-10-06 19:53:45 -07:00
Wei Huang
3283e6bb72 sched: integration test to cover event registration 2021-10-06 15:17:38 -07:00
ravisantoshgudimetla
9476237923 [scheduler] [test]: Fix PreferNominatedNode test
Once the node gets deleted, the nodelifecycle controller
is racing to update pod status and the pod deletion logic
is failing causing tests to flake. This commit moves
the testContext creation to within the test loop and deletes nodes,
namespace within the test loop. We don't explicitly call the node
deletion within the loop but the `testutils.CleanupTest(t, testCtx)`
call ensures that the namespace, nodes gets deleted.
2021-10-06 09:07:16 -04:00
Swati Sehgal
9337902648 podresource: move the checkForTopology logic inline
As per the recommendation here: https://github.com/kubernetes/kubernetes/pull/103289#pullrequestreview-766949859
we move the check inline.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2021-10-06 11:31:48 +01:00
Kubernetes Prow Robot
4af19756bd Merge pull request #105217 from dbgoytia/refactor/102787-enable-block-tests
Refactoring TestConcurrentAccessToRelatedVolumes for enabling Block Volume tests
2021-10-05 14:18:57 -07:00
Kubernetes Prow Robot
907d62eac8 Merge pull request #105462 from ehashman/merge-terminal-phase
Ensure terminal pods maintain terminal status
2021-10-05 13:12:58 -07:00
Elana Hashman
f9a827b895 Fix bugs in e2e pod test
- Update test to account for late synced statuses
- Terminated containers are not running
- Add missing format values to test logline
2021-10-05 11:51:12 -07:00
Kubernetes Prow Robot
c4c3062c07 Merge pull request #102333 from mcbenjemaa/fix/102295
Add Log statement in exec_util.go for ClientSet Creation
2021-10-05 11:21:53 -07:00
Kubernetes Prow Robot
b28bf04cd0 Merge pull request #105468 from ehashman/missing-format-values
Add missing format values to test logline
2021-10-05 09:23:40 -07:00
Kubernetes Prow Robot
b4a0342714 Merge pull request #105388 from mauriciopoppe/copy-volumesnapshotcontent-annotations
Copy VolumeSnapshotContent annotations in snapshottable.go test
2021-10-05 09:23:33 -07:00
Giuseppe Scrivano
f23e2a8c7f test, cgroupv2: adjust pagefaults test
on cgroup v2 the reported metric is recursive and it includes all the
sub cgroups.

Closes: https://github.com/kubernetes/kubernetes/issues/105301

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2021-10-05 18:00:57 +02:00
Kubernetes Prow Robot
519b164db1 Merge pull request #105222 from cyclinder/remove_node_lease_GA
remove nodeLease feature GA
2021-10-05 05:41:21 -07:00
Kubernetes Prow Robot
c5ad58d8a1 Merge pull request #103372 from verb/1.22-e2e-node
Create node_e2e test for ephemeral containers
2021-10-05 05:41:09 -07:00
Danielle Lancashire
742d3d36f5 e2e_node: cleanup features in podresources 2021-10-05 14:39:59 +02:00
Danielle Lancashire
f28dd90810 e2e_node: NodeGracefulShutdown is a Beta feature 2021-10-05 14:39:59 +02:00
Danielle Lancashire
71e6d9cbe0 e2e_node: remove no-op config change from critical_pod_test 2021-10-05 10:36:32 +02:00
Danielle Lancashire
8b1b06c507 e2e_node: Remove KubeletPodResources enablement as it is a default gate 2021-10-05 10:26:10 +02:00
Author cyclinder
e61b901628 remove nodeLease feature GA
Signed-off-by: cyclinder <qifeng.guo@daocloud.io>
2021-10-05 12:23:27 +08:00
Claudiu Belu
f7cf747e48 tests: Wait for pod collection to enter a Running state
While running tests in parallel, especially those with higher loads
than others, it might take some time for Pods to be Running, even more
so if the image has to be pulled as well.

The test [sig-node] Pods should delete a collection of pods [Conformance]
only waits for the for the pods to be scheduled before deleting them, and
expects them to be gone in 1 minute, which can flake because of the above
reasons. Note that the operations are in order, and kubelet runs them in
order, which means that the pod first has to enter the Running state
before attempting to delete it.

This commit waits for the Pods to enter the Running state first before
deleting the entire collection.

Co-Authored-By: Antonio Ojea <aojea@redhat.com>
2021-10-04 20:42:16 -07:00
Kubernetes Prow Robot
0a29e2a73a Merge pull request #105197 from alculquicondor/job-tracking
Roll-forward: Beta requirements for JobTrackingWithFinalizers
2021-10-04 18:57:49 -07:00
Kubernetes Prow Robot
9eaabb6b2e Merge pull request #104304 from endocrimes/dani/eviction
[Failing Test] Fix Kubelet Storage Eviction Tests
2021-10-04 15:16:40 -07:00
Kubernetes Prow Robot
70d1360ab8 Merge pull request #105103 from tkashem/extend-audit-policy
apiserver: refactor PolicyRuleEvaluator interface
2021-10-04 14:12:40 -07:00
Elana Hashman
7bbf40f1cc Add missing format values to test logline 2021-10-04 13:44:15 -07:00
Kubernetes Prow Robot
04f747d09f Merge pull request #104782 from kerthcet/cleanup/remove-cc-v1beta1
remove scheduler component config v1beta1
2021-10-04 08:53:08 -07:00
Lee Verberne
2a82228e33 Apply suggestions from code review
Co-authored-by: Sergey Kanzhelev <S.Kanzhelev@live.com>
2021-10-04 15:07:37 +02:00
Kubernetes Prow Robot
f31453fe5b Merge pull request #104894 from pacoxu/windows-arm
add windows arm support on client-side since go 1.17 supports
2021-10-04 04:19:07 -07:00
Danielle Lancashire
7b91337068 e2e_node: eviction: Include names of pending-eviction pods in error 2021-10-04 13:07:40 +02:00
Danielle Lancashire
b5c2d3b389 e2e_node: eviction: Memory-backed Volumes seperation
This commit fixes the LocalStorageCapacityIsolationEviction test by
acknowledging that in its default configuration kubelet will no-longer
evict memory-backed volume pods as they cannot use more than their
assigned limit with SizeMemoryBackedVolumes enabled.

To account for the old behaviour, we also add a test that explicitly
disables the feature to test the behaviour of memory backed local
volumes in those scenarios. That test can be removed when/if the feature
gate is removed.
2021-10-04 13:07:40 +02:00
Danielle Lancashire
a8168ed543 e2e_node: Fix LocalStorage and PriorityLocalStorage eviction tests
Currently the storage eviction tests fail for a few reasons:
- They re-enter storage exhaustion after pulling the images during
  cleanup (increasing test storage reqs, and adding verification for
future diagnosis)
- They were timing out, as in practice it seems that eviction takes just
  over 10 minutes on an n1-standard in many cases. I'm raising these to
15 to provide some padding.

This should ideally bring these tests to passing on CI, as they've now
passed locally for me several times with the remote GCE env.

Follow up work involves diagnosing why these take so long, and
restructuring them to be less finicky.
2021-10-04 13:07:40 +02:00
Kubernetes Prow Robot
82da9bdaab Merge pull request #105076 from pohly/log-flush-frequency-bug
initialize logging after flag parsing + refactor commands
2021-10-01 14:30:18 -07:00
Kubernetes Prow Robot
e414cf7641 Merge pull request #100482 from pohly/generic-ephemeral-volume-checks
generic ephemeral volume checks
2021-10-01 10:47:22 -07:00
Swati Sehgal
01dacd0463 podresource-api: getAllocatableResources to Beta
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2021-10-01 16:48:29 +01:00
Patrick Ohly
1e26115df5 consider ephemeral volumes for host path and node limits check
When adding the ephemeral volume feature, the special case for
PersistentVolumeClaim volume sources in kubelet's host path and node
limits checks was overlooked. An ephemeral volume source is another
way of referencing a claim and has to be treated the same way.
2021-10-01 17:03:44 +02:00
Aldo Culquicondor
95c2a8024c Parallelize pod updates in job test
To potentially reduce the number of job controller syncs.

Also reduce the maximum number of pods to sync in tests.
2021-10-01 09:55:53 -04:00
Jordan Liggitt
11c2674ec2 Fix CSR test to accept certs shorter than the requested duration 2021-10-01 09:14:54 -04:00
Kubernetes Prow Robot
1d5349df0c Merge pull request #103359 from m14815/commit-21.6.4
Remove Redundant type conversion
2021-10-01 04:19:22 -07:00
Kubernetes Prow Robot
b15f37ef22 Merge pull request #103391 from tanjing2020/runtimeclass
[e2e] Add description of use case “storage version with non-existing id should be GC'ed” execution conditions
2021-09-30 17:29:21 -07:00
Mauricio Poppe
e89704dbb1 Copy VolumeSnapshotContent annotations in snapshottable.go test 2021-09-30 23:43:21 +00:00
Patrick Ohly
1957fb6508 command lines: harmonize command line parse error handling
The recommendation from #sig-cli was to print usage, then the error. Extra care
is taken to only print the usage instruction when the error really was about
flag parsing.

Taking kube-scheduler as example:

  $ _output/bin/kube-scheduler
  I0929 09:42:42.289039  149029 serving.go:348] Generated self-signed cert in-memory
  ...
  W0929 09:42:42.489255  149029 client_config.go:620] error creating inClusterConfig, falling back to default config: unable to load in-cluster configuration, KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT must be defined
  E0929 09:42:42.489366  149029 run.go:98] "command failed" err="invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable"

  $ _output/bin/kube-scheduler --xxx
  Usage:
    kube-scheduler [flags]

  ...
       --vmodule moduleSpec
                  comma-separated list of pattern=N settings for file-filtered logging

  Error: unknown flag: --xxx

The kubectl behavior doesn't change:

  $ _output/bin/kubectl get nodes
  Unable to connect to the server: dial tcp: lookup xxxx: No address associated with hostname

  $ _output/bin/kubectl --xxx
  Error: unknown flag: --xxx
  See 'kubectl --help' for usage.
2021-09-30 13:46:49 +02:00
Patrick Ohly
21d1bcd6b8 initialize logging after flag parsing
It wasn't documented that InitLogs already uses the log flush frequency, so
some commands have called it before parsing (for example, kubectl in the
original code for logs.go). The flag never had an effect in such commands.

Fixing this turned into a major refactoring of how commands set up flags and
run their Cobra command:

- component-base/logs: implicitely registering flags during package init is an
  anti-pattern that makes it impossible to use the package in commands which
  want full control over their command line. Logging flags must be added
  explicitly now, something that the new cli.Run does automatically.

- component-base/logs: AddFlags would have crashed in kubectl-convert if it
  had been called because it relied on the global pflag.CommandLine. This
  has been fixed and kubectl-convert now has the same --log-flush-frequency
  flag as other commands.

- component-base/logs/testinit: an exception are tests where flag.CommandLine has
  to be used. This new package can be imported to add flags to that
  once per test program.

- Normalization of the klog command line flags was inconsistent. Some commands
  unintentionally didn't normalize to the recommended format with hyphens. This
  gets fixed for sample programs, but not for production programs because
  it would be a breaking change.

This refactoring has the following user-visible effects:

- The validation error for `go run ./cmd/kube-apiserver --logging-format=json
  --add-dir-header` now references `add-dir-header` instead of `add_dir_header`.

- `staging/src/k8s.io/cloud-provider/sample` uses flags with hyphen instead of
  underscore.

- `--log-flush-frequency` is not listed anymore in the --logging-format flag's
  `non-default formats don't honor these flags` usage text because it will also
  work for non-default formats once it is needed.

- `cmd/kubelet`: the description of `--logging-format` uses hyphens instead of
  underscores for the flags, which now matches what the command is using.

- `staging/src/k8s.io/component-base/logs/example/cmd`: added logging flags.

- `apiextensions-apiserver` no longer prints a useless stack trace for `main`
  when command line parsing raises an error.
2021-09-30 13:46:49 +02:00
Kubernetes Prow Robot
bac45abf77 Merge pull request #105327 from julianvmodesto/kubectl-dry-run-flag-removals
Remove deprecated kubectl --dry-run values.
2021-09-29 13:31:21 -07:00
jonyhy
010641c849 test: add benchmark test
Signed-off-by: jonyhy <yun.hao@daocloud.io>
2021-09-29 17:46:11 +08:00
Francesco Romani
077c0aa1be node: graduate CPUManagerPolicyOptions to beta
We graduate the `CPUManagerPolicyOptions` feature to beta
in the 1.23 cycle, and we add new experimental feature gates
to guard new options which are planned in the 1.23 and in the
following cycles.

We introduce additional feature gate called `CPUManagerPolicyAlphaOptions` and
`CPUManagerPolicyBetaOptions`. The basic idea is to avoid the
cumbersome process of adding a feature gate for each option, and to have
feature gates which track the maturity level of _groups_ of options.
Besides this change, the graduation process, and the process in general,
for adding new policy options is still unchanged.

The `full-pcpus-only` option added in the 1.22 cycle is intentionally
moved into the beta policy options

For more details:
- KEP: https://github.com/kubernetes/enhancements/pull/2933
- sig-arch discussion:
  https://groups.google.com/u/1/g/kubernetes-sig-architecture/c/Nxsc7pfe5rw

Signed-off-by: Francesco Romani <fromani@redhat.com>
2021-09-29 11:40:03 +02:00