Commit Graph

3230 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
4af079a3a1 Merge pull request #112663 from aojea/reachability
do not assume backend on e2e service jig
2022-09-22 12:51:28 -07:00
Kubernetes Prow Robot
3a0dbe5749 Merge pull request #112335 from piotrnosek/fixcustomcrd
Fix HPA E2E CustomResourceDefinition test
2022-09-22 11:01:06 -07:00
Antonio Ojea
909a08d011 do not assume backend on e2e service jig 2022-09-22 07:49:05 +02:00
Piotr Nosek
96ff1b1bcb Fix HPA E2E CRD test 2022-09-21 22:39:47 +00:00
Kubernetes Prow Robot
f0823c0f59 Merge pull request #112503 from pohly/e2e-framework-pod-polling
e2e framework: pod polling
2022-09-20 00:05:20 -07:00
Patrick Ohly
004c1b6441 e2e framework: abort polling for running pod early
When the pod state is failed or completed, the pod will never again enter the
running state and polling can stop.
2022-09-19 18:10:04 +02:00
Kubernetes Prow Robot
d2e3c70f1d Merge pull request #111961 from pohly/e2e-klog-output
e2e: klog output
2022-09-17 14:38:28 -07:00
Manjunath A Kumatagi
2384a341e1 Add no-op package file to avoid build constraints exclude all Go files error 2022-09-17 12:15:49 +05:30
Kubernetes Prow Robot
4bc1398c08 Merge pull request #112510 from humblec/new-2
various typo corrections in test/e2e package
2022-09-16 14:59:00 -07:00
Kubernetes Prow Robot
06fd0a0728 Merge pull request #112489 from dims/etcd_update_v3.5.5
etcd: Updated to v3.5.5
2022-09-16 08:49:16 -07:00
Kubernetes Prow Robot
740011927c Merge pull request #112504 from pohly/e2e-wait-service-account
e2e framework: better error when service account creation times out
2022-09-16 06:31:28 -07:00
Humble Chirammal
9e9fc2be88 various corrections in test/e2e package
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2022-09-16 18:59:30 +05:30
Kubernetes Prow Robot
0f582f7c3f Merge pull request #112416 from aojea/race_apiserver_startup
Don't run TestCleanup that requires etcd on non linux+amd64 platforms
2022-09-16 02:49:18 -07:00
Patrick Ohly
efc172f4bf e2e framework: better error when service account creation times out
When waiting for the default service account in a new namespace, not finding
one was reported as "unexpected error: timed out waiting for the condition"...
2022-09-16 11:21:31 +02:00
Antonio Ojea
920dec740b skip etcd unit tests on non fully supported architectures
etcd only fully supports linux && amd64, the other architectures
and OS are only guaranteed to build, see:

https://etcd.io/docs/v3.5/op-guide/supported-platform/#support-tiers

Skip the test that use etcd on not well supported environment to
guarantee the stability of the test.
2022-09-16 10:38:03 +02:00
Patrick Ohly
0bd901afea e2e framework: better error messages when pod has failed or completed
Getting a message about "pod ran to completion" is confusing when the pod
hasn't been able to start at all. The failed state now has a different message.

To address the previous ambiguity, the success state is described as "ran to
completion successfully".
2022-09-16 09:12:51 +02:00
Davanum Srinivas
0f6b9b883c etcd: Updated to v3.5.5
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-09-15 21:05:13 -04:00
Kubernetes Prow Robot
ee94dce5b1 Merge pull request #112015 from humblec/glusterfs-gone
Removal of GlusterFS code from the repo
2022-09-14 10:03:00 -07:00
Humble Chirammal
c2a7bfd6b4 removal of glusterfs in-tree driver code from the source
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2022-09-13 20:11:50 +05:30
Patrick Ohly
84990d53cf e2e: improve description of framework callbacks
When Ginkgo shows a BeforeEach/AfterEach/DeferCleanup, then it can only show
the source code where the callback was registered because there is no
description parameter. This can be improved by passing a custom CodeLocation.

Because a description like "set up framework" might not be enough, the source
code is still shown, too.
2022-09-13 14:27:32 +02:00
Kubernetes Prow Robot
d7d82ad972 Merge pull request #112252 from piotrnosek/hpa-average-metrics
Add e2e HPA Tests: CPU and Memory Average with different aggregation methods: Average Value and Utilization
2022-09-12 09:41:24 -07:00
Kubernetes Prow Robot
3e9e41f82c Merge pull request #112389 from pohly/test-cleanup-flake
e2e: avoid random control plane output through GinkoWriter
2022-09-12 05:27:37 -07:00
Patrick Ohly
2e61dfbf1d e2e: avoid random control plane output through GinkoWriter
If the control plane emits anything at the time when the test runs, for example
"unable to sync kubernetes service", the test breaks because that additional
output is unexpected.
2022-09-12 12:02:37 +02:00
Patrick Ohly
d33e66b81b e2e: reduce built time for framework
Pulling the CreateKubeConfig function from the expensive to build
test/utils/apiserver package had a considerable impact on the overall build
time because that package depends on a lot of other packages.

Because only that one function is needed by the framework, that extra build
time can be avoided by moving it into its own package.
2022-09-10 17:56:23 +02:00
Piotr Nosek
3d7855392f HPA E2E Test: CPU / Memory: Average Value / Utilization 2022-09-09 16:06:55 +00:00
Patrick Ohly
7eb472246f e2e framework: use new apiserver helper package 2022-09-09 13:51:07 +02:00
Patrick Ohly
fc092eb145 e2e: remove cleanup actions
The framework.AddCleanupAction API was a workaround for Ginkgo v1 not invoking
AfterEach callbacks after a test failure. Ginkgo v2 not only fixed that, but
also added a DeferCleanup API which can be used to run some code if (and only
if!) the corresponding setup code ran. In several cases that makes the test
cleanup simpler.
2022-09-09 13:51:07 +02:00
Patrick Ohly
b7529097ca e2e framework: add unit test for test execution
This covers multiple facets of the current framework and of Ginkgo:

- Ginkgo output is verbose and includes detailed progress
  messages (BeforeEach/AfterEach tracing).
- Namespace creation.
- Order of callback invocation.
2022-09-09 13:51:07 +02:00
Patrick Ohly
f7864977b6 e2e internal: support Ginkgo v2 log time stamps
When using By or some other Ginkgo output functions, Ginkgo v2 now adds a time
stamp at the end of the line that we need to ignore. Will become relevant when
testing more complete output.
2022-09-08 22:50:01 +02:00
Patrick Ohly
53e1c7b4c3 e2e framework: remove AddAfterEach
For cleanup purposes the ginkgo.DeferCleanup is a better replacement for
f.AddAfterEach:
- the cleanup only gets executed when the corresponding setup code ran
  and can use the same local variables
- the callback runs after the test and before the framework
  deletes namespaces (as before)
- if one callback fails, the others still get executed

For the original purpose (https://github.com/kubernetes/kubernetes/pull/86177 "This is
very useful for custom gathering scripts.") it is now possible to use
ginkgo.AfterEach because it will always get executed. Just beware that its
callbacks run in first-in-first-out order.
2022-09-08 22:50:01 +02:00
Patrick Ohly
cbf94307ef e2e framework: clean up instance after all other code ran
In contrast to ginkgo.AfterEach, ginkgo.DeferCleanup runs the callback in
first-in-last-out order. Using it makes the following test code work as
expected:

    f := framework.NewDefaultFramework("some test")

    ginkgo.AfterEach(func() {
        // do something with f.ClientSet
    })

Previously, f.ClientSet was already set to nil by the framework's cleanup code.
2022-09-08 22:50:01 +02:00
Kubernetes Prow Robot
c870f1ddc7 Merge pull request #111865 from piotrnosek/hpa-tests-batch
Add e2e HPA tests: Scale to zero, scale a CRD targetRef
2022-09-01 05:43:05 -07:00
Piotr Nosek
e252fcc429 HPA E2E Test: Scale to zero, scale custom CRD 2022-08-31 18:34:52 +00:00
Kubernetes Prow Robot
d436f5d0b7 Merge pull request #111954 from hj-johannes-lee/fix-typo-1
Fix typo of e2e utils under network framework
2022-08-23 20:09:16 -07:00
Kubernetes Prow Robot
95dab53bc2 Merge pull request #111907 from mythi/e2e-pod-wait-timeout
e2e: use user provided timeout in WaitForPodsWithLabelRunningReady
2022-08-23 20:08:52 -07:00
Davanum Srinivas
9bbf01bae9 Remove references to openstack and cinder
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-08-22 16:43:14 -04:00
Patrick Ohly
96e9a93a6b e2e: disable double printing of errors
We don't want klog to print to anything other than GinkgoWriter, but it still
used os.Stderr in addition to GinkgoWriter when printing log entries with
severity >= error. Changing "stderrthreshold" fixes that.

The unit test for framework output handling didn't test klog behavior. Now it
does:
- os.Stderr is redirected, should be empty
- a new test invokes klog
2022-08-22 17:04:26 +02:00
Patrick Ohly
c80eec19dd e2e: fix output test assertion
The format string didn't match the parameters.
2022-08-22 16:59:18 +02:00
Hyeongju Johannes Lee
0bd220ca39 Fix typo of e2e utils under network framework
Fix typo "contaienr" to "container"
2022-08-22 14:15:09 +03:00
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
Kubernetes Prow Robot
f0bd02ca5e Merge pull request #111346 from piotrnosek/hpa-tests-2
Add e2e HPA Behavior tests: scale up/down limited by number of Pods / min, scale up/down limited by percentage / min
2022-08-09 03:14:50 -07:00
Kubernetes Prow Robot
15d290f280 Merge pull request #111521 from wongma7/ephemeralcopy
Clear ephemeral container resources field when creating one in volume test
2022-08-04 07:51:50 -07:00
Piotr Nosek
aa9ed5209b Add e2e HPA Behavior tests: scale up&down limited by number of Pods per minute, scale up&down limited by percentage of Pods per minute 2022-08-04 09:33:52 +00:00
Kubernetes Prow Robot
feec95583a Merge pull request #111669 from pohly/trim_report_framework
e2e: trim junit report for Spyglass
2022-08-03 20:49:58 -07:00
Kubernetes Prow Robot
4b6134b6dc Merge pull request #111090 from kinvolk/rata/userns-support-2022
Add support for user namespaces phase 1 (KEP 127)
2022-08-03 13:05:47 -07:00
Dave Chen
c299a12cf2 e2e: trim junit report for Spyglass, avoid "open stdout"
Including the full information for successful tests makes the resulting XML
file too large for the 200GB limit in Spyglass when running large jobs (like
scale testing).

The original solution from https://github.com/kubernetes/kubernetes/pull/111627
broke JUnit reporting in other test suites, in particular
test/e2e_node. Keeping the code inside the framework ensures that all test
suites continue to have the JUnit reporting.

AfterReadingAllFlags is a good place to set this up because all test suites
using the test context are expected to call it before running tests and after
parsing flags.

Removing the ReportEntries added by ginkgo.By from all test reports usually
avoids the `system-err` part in the JUnit file, which in Spyglass avoids
the extra "open stdout" button.

Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
Co-authored-by: Dave Chen <dave.chen@arm.com>
2022-08-03 17:56:36 +02:00
Danielle
5b312246c8 Revert "e2e: Trim junit reporter to adapt with testgrid" 2022-08-03 15:45:09 +02:00
Kubernetes Prow Robot
cf777ab782 Merge pull request #111627 from chendave/trim_report
e2e: Trim junit reporter to adapt with testgrid
2022-08-03 04:51:52 -07: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
Roman Bednar
42b24b7baf move storage class helpers to utils 2022-08-02 20:52:04 +02:00