Commit Graph

13477 Commits

Author SHA1 Message Date
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
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
Kubernetes Prow Robot
efaf56d4b6 Merge pull request #112444 from piotrnosek/hpamultimplemetrics
HPA E2E tests: Multiple Metrics
2022-09-15 16:41:18 -07:00
Kubernetes Prow Robot
9f62f4f087 Merge pull request #112392 from alexkats/enable-tests-for-large-clusters
Remove 'DisabledForLargeClusters' tag for LB tests
2022-09-14 13:07:34 -07:00
Kubernetes Prow Robot
4e8b11d441 Merge pull request #111333 from flant/selfsubjectattributesreviews
Add auth API to get self subject attributes
2022-09-14 13:07:22 -07:00
Kubernetes Prow Robot
148476eff1 Merge pull request #112427 from gnufied/add-zone-field-cloud-config-test
Add zone field to vsphere test cloudconfig
2022-09-14 11:09:25 -07: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
m.nabokikh
00dfba473b Add auth API to get self subject attributes
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
2022-09-14 18:00:26 +02:00
Piotr Nosek
72faedc291 HPA E2E tests: multiple metrics 2022-09-14 11:16:25 +00:00
Hemant Kumar
30ac00eeb5 Add zone field to vsphere test cloudconfig 2022-09-13 17:19:33 -04: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
46e1718462 Merge pull request #112351 from piotrnosek/fixbehaviortests
Fix flaky and failing HPA E2E Behavior tests
2022-09-12 10:55:37 -07: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
eedf0ed221 Merge pull request #112390 from pohly/e2e-storage-helpers
e2e storage: update helpers
2022-09-12 08:07:48 -07:00
Kubernetes Prow Robot
48256c55c2 Merge pull request #112251 from pohly/e2e-storage-proxy-shutdown
e2e storage: close all pending streams when proxy listener gets closed
2022-09-12 08:07:24 -07:00
Alex Katsman
945aea4627 Remove 'DisabledForLargeClusters' tag for LB tests
We performed several internal tests at Google both on GKE and
Kubernetes, and we believe it's safe to re-enable them for large
clusters.
2022-09-12 15:08:42 +02:00
Patrick Ohly
24230b4307 e2e storage: support creating ReplicaSet
This is useful for running a driver on a subset of all ready nodes:

- use e2enode.GetBoundedReadySchedulableNodes with a suitable
  maximum number of nodes to determine how much nodes are available
  for a test
- define pod anti-affinity in the PodTemplate:
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchLabels:
                app.kubernetes.io/instance: xxxxxxx
            topologyKey: kubernetes.io/hostname
- set the ReplicaSetSpec.Replicas value to the number of nodes
2022-09-12 14:38:28 +02:00
Patrick Ohly
b6b25c80de e2e storage: add CreateFile to pod IO operations
This complements the other operations and will be used by some
future tests.
2022-09-12 14:38:27 +02: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
Piotr Nosek
ed1a3e6f70 Fix flaky and failing HPA E2E Behavior tests 2022-09-09 12:57:48 +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
9188d55689 Merge pull request #112308 from ii/promote-namespace-replace-test
Promote CoreV1NamespaceReplace Test +1 Endpoint
2022-09-08 13:11:43 -07:00
Patrick Ohly
2ace9a884e e2e: generalize the framework e2e* import alias rule
All framework sub packages should used e2e<package name> as import alias, also
the daemonset sub package that previously wasn't listed explicitly.
2022-09-08 18:37:52 +02:00
Stephen Heywood
974f4b8ee1 Promote Namespace e2e test to Conformance 2022-09-08 11:44:05 +12:00
Patrick Ohly
8349c77e82 e2e storage: better explanation for maxConcurrentConnections
This the same behavior as before, it just wasn't documented.
2022-09-07 17:05:22 +02:00
Patrick Ohly
0bd9a1a29a e2e storage: close all pending streams when proxy listener gets closed
After updating gRPC in node-driver-registrar from v1.40.0 to v1.47.0 the
behavior of gRPC change in a way such that it no longer detected the
single-sided closing of the stream as a loss of connection. This caused gRPC in
the e2e.test to get stuck, possibly in a Read or Write for the HTTP stream
because those have neither a context nor a timeout.

Changing the connection handling so that all active connections are tracking in
the listener and closing them when the listener gets closed fixed this problem.
2022-09-05 22:46:01 +02:00
Joe Betz
7be77f9ecc changes code to improve output for files under test/e2e/storage 2022-09-02 17:43:41 +05:30
Kubernetes Prow Robot
bf624aa77f Merge pull request #111951 from sashrith/vsphere_intree_test_fixes
vsphere in-tree driver test fixes
2022-09-01 08:01:06 -07: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
d0e413e86d Merge pull request #112129 from pohly/e2e-ginkgo-report-after-each
e2e: suppress too verbose output
2022-08-31 10:00:56 -07:00
Kubernetes Prow Robot
cb057985ce Merge pull request #112035 from piotrnosek/owners-autoscaling
Add OWNERS for autoscaling-owned directory
2022-08-31 08:37:01 -07:00
Patrick Ohly
80d3cc3027 e2e: suppress progress messages for custom progress reporter
The custom progress reporter gets invoked via ginkgo.ReportAfterEach after each
test. The problem was that the e2e framework unconditionally enables Ginkgo's
-progress output which shows execution of all nodes, including this
ReportAfterEach. The effect were over 1000 lines of useless output at the start
of a test run while skipping disabled tests.

The solution is to tell Ginkgo that the ReportAfterEach isn't meant to be
reported.
2022-08-30 19:58:10 +02:00
S R Ashrith
16f541ea8f Skip read only raw block volume test for in-tree vsphere driver 2022-08-27 23:17:29 +05:30
S R Ashrith
41dbdef540 vsphere in-tree driver test fixes 2022-08-27 23:14:40 +05:30
Fabio Bertinatto
e13c9be88a e2e: use custom timeouts in GetSnapshotContentFromSnapshot() 2022-08-26 15:16:35 -03:00
Kubernetes Prow Robot
3528d6f38e Merge pull request #111848 from ii/create-namespace-replace-test
Write CoreV1NamespaceReplace Test +1 Endpoint
2022-08-25 23:34:26 -07:00
Piotr Nosek
7de1d13687 Add OWNERS for autoscaling-owned directory 2022-08-25 14:19:25 +00:00
Kubernetes Prow Robot
2472c8813a Merge pull request #111874 from piotrnosek/hpa-tests-beh-scen
Add e2e HPA Behavior Tests: Scale up and down controls
2022-08-24 03:42:25 -07:00
Kubernetes Prow Robot
6c0bab878c Merge pull request #111120 from iXinqi/lxinqi/destorying-svc-test
Add creating a destroying services test
2022-08-24 00:02:35 -07: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