Kubernetes Prow Robot
c1602669a6
Merge pull request #112806 from dcbw/demote-service-affinity-timeout
...
test: demote service ClientIP affinity timeout tests from conformance
2022-10-11 14:12:40 -07:00
Patrick Ohly
1793132198
e2e storage: avoid usage of stdin for file creation
...
It turned out to be unreliable (see
https://github.com/kubernetes/kubernetes/issues/112834 ). Encoding the data
inside the command as input for base64 is a workaround that is fine for small
amounts of data. It becomes less efficient and/or unusable for large amounts.
2022-10-11 15:02:25 +02:00
Patrick Ohly
64731baffe
e2e storage: add logging to proxy
...
This is optional and can be used to capture the result of command execution in
the log output.
2022-10-11 15:02:25 +02:00
Alexis MacAskill
d6d93788ae
remove in-tree volume limits test now that CSIMigration is GA
2022-10-09 02:47:32 +00:00
Patrick Ohly
2ba1d9e014
e2e framework: remove AddonResourceConstraints
...
According to spiffx in
https://github.com/kubernetes/kubernetes/pull/112043/files#r978031680 :
> Last in-tree tests that used it were removed in #83322 (1.17 timeframe)
> so I think it can be safely removed
2022-10-06 08:19:47 +02:00
Patrick Ohly
9b49ef433c
e2e framework: add top-level README.md
...
This documents the cleaned up package structure and explains how callbacks are
invoked. Ginkgko v2 has led to some improvements in that area.
2022-10-06 08:19:47 +02:00
Patrick Ohly
7f8831407c
e2e framework: also test BeforeEach and extension mechanism
...
This adds test coverage for NewFrameworkExtensions and shows better how
BeforeEach callbacks are invokved. The unit test is not strictly about just the
cleanup operations anymore, but that's okay(ish).
2022-10-06 08:19:47 +02:00
Patrick Ohly
dfdf88d4fa
e2e: adapt to moved code
...
This is the result of automatically editing source files like this:
go install golang.org/x/tools/cmd/goimports@latest
find ./test/e2e* -name "*.go" | xargs env PATH=$GOPATH/bin:$PATH ./e2e-framework-sed.sh
with e2e-framework-sed.sh containing this:
sed -i \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.ExecCommandInContainer(/e2epod.ExecCommandInContainer(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.ExecCommandInContainerWithFullOutput(/e2epod.ExecCommandInContainerWithFullOutput(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.ExecShellInContainer(/e2epod.ExecShellInContainer(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.ExecShellInPod(/e2epod.ExecShellInPod(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.ExecShellInPodWithFullOutput(/e2epod.ExecShellInPodWithFullOutput(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.ExecWithOptions(/e2epod.ExecWithOptions(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.MatchContainerOutput(/e2eoutput.MatchContainerOutput(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.PodClient(/e2epod.NewPodClient(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.PodClientNS(/e2epod.PodClientNS(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.TestContainerOutput(/e2eoutput.TestContainerOutput(\1, /" \
-e "s/\(f\|fr\|\w\w*\.[fF]\w*\)\.TestContainerOutputRegexp(/e2eoutput.TestContainerOutputRegexp(\1, /" \
-e "s/framework.AddOrUpdateLabelOnNode\b/e2enode.AddOrUpdateLabelOnNode/" \
-e "s/framework.AllNodes\b/e2edebug.AllNodes/" \
-e "s/framework.AllNodesReady\b/e2enode.AllNodesReady/" \
-e "s/framework.ContainerResourceGatherer\b/e2edebug.ContainerResourceGatherer/" \
-e "s/framework.ContainerResourceUsage\b/e2edebug.ContainerResourceUsage/" \
-e "s/framework.CreateEmptyFileOnPod\b/e2eoutput.CreateEmptyFileOnPod/" \
-e "s/framework.DefaultPodDeletionTimeout\b/e2epod.DefaultPodDeletionTimeout/" \
-e "s/framework.DumpAllNamespaceInfo\b/e2edebug.DumpAllNamespaceInfo/" \
-e "s/framework.DumpDebugInfo\b/e2eoutput.DumpDebugInfo/" \
-e "s/framework.DumpNodeDebugInfo\b/e2edebug.DumpNodeDebugInfo/" \
-e "s/framework.EtcdUpgrade\b/e2eproviders.EtcdUpgrade/" \
-e "s/framework.EventsLister\b/e2edebug.EventsLister/" \
-e "s/framework.ExecOptions\b/e2epod.ExecOptions/" \
-e "s/framework.ExpectNodeHasLabel\b/e2enode.ExpectNodeHasLabel/" \
-e "s/framework.ExpectNodeHasTaint\b/e2enode.ExpectNodeHasTaint/" \
-e "s/framework.GCEUpgradeScript\b/e2eproviders.GCEUpgradeScript/" \
-e "s/framework.ImagePrePullList\b/e2epod.ImagePrePullList/" \
-e "s/framework.KubectlBuilder\b/e2ekubectl.KubectlBuilder/" \
-e "s/framework.LocationParamGKE\b/e2eproviders.LocationParamGKE/" \
-e "s/framework.LogSizeDataTimeseries\b/e2edebug.LogSizeDataTimeseries/" \
-e "s/framework.LogSizeGatherer\b/e2edebug.LogSizeGatherer/" \
-e "s/framework.LogsSizeData\b/e2edebug.LogsSizeData/" \
-e "s/framework.LogsSizeDataSummary\b/e2edebug.LogsSizeDataSummary/" \
-e "s/framework.LogsSizeVerifier\b/e2edebug.LogsSizeVerifier/" \
-e "s/framework.LookForStringInLog\b/e2eoutput.LookForStringInLog/" \
-e "s/framework.LookForStringInPodExec\b/e2eoutput.LookForStringInPodExec/" \
-e "s/framework.LookForStringInPodExecToContainer\b/e2eoutput.LookForStringInPodExecToContainer/" \
-e "s/framework.MasterAndDNSNodes\b/e2edebug.MasterAndDNSNodes/" \
-e "s/framework.MasterNodes\b/e2edebug.MasterNodes/" \
-e "s/framework.MasterUpgradeGKE\b/e2eproviders.MasterUpgradeGKE/" \
-e "s/framework.NewKubectlCommand\b/e2ekubectl.NewKubectlCommand/" \
-e "s/framework.NewLogsVerifier\b/e2edebug.NewLogsVerifier/" \
-e "s/framework.NewNodeKiller\b/e2enode.NewNodeKiller/" \
-e "s/framework.NewResourceUsageGatherer\b/e2edebug.NewResourceUsageGatherer/" \
-e "s/framework.NodeHasTaint\b/e2enode.NodeHasTaint/" \
-e "s/framework.NodeKiller\b/e2enode.NodeKiller/" \
-e "s/framework.NodesSet\b/e2edebug.NodesSet/" \
-e "s/framework.PodClient\b/e2epod.PodClient/" \
-e "s/framework.RemoveLabelOffNode\b/e2enode.RemoveLabelOffNode/" \
-e "s/framework.ResourceConstraint\b/e2edebug.ResourceConstraint/" \
-e "s/framework.ResourceGathererOptions\b/e2edebug.ResourceGathererOptions/" \
-e "s/framework.ResourceUsagePerContainer\b/e2edebug.ResourceUsagePerContainer/" \
-e "s/framework.ResourceUsageSummary\b/e2edebug.ResourceUsageSummary/" \
-e "s/framework.RunHostCmd\b/e2eoutput.RunHostCmd/" \
-e "s/framework.RunHostCmdOrDie\b/e2eoutput.RunHostCmdOrDie/" \
-e "s/framework.RunHostCmdWithFullOutput\b/e2eoutput.RunHostCmdWithFullOutput/" \
-e "s/framework.RunHostCmdWithRetries\b/e2eoutput.RunHostCmdWithRetries/" \
-e "s/framework.RunKubectl\b/e2ekubectl.RunKubectl/" \
-e "s/framework.RunKubectlInput\b/e2ekubectl.RunKubectlInput/" \
-e "s/framework.RunKubectlOrDie\b/e2ekubectl.RunKubectlOrDie/" \
-e "s/framework.RunKubectlOrDieInput\b/e2ekubectl.RunKubectlOrDieInput/" \
-e "s/framework.RunKubectlWithFullOutput\b/e2ekubectl.RunKubectlWithFullOutput/" \
-e "s/framework.RunKubemciCmd\b/e2ekubectl.RunKubemciCmd/" \
-e "s/framework.RunKubemciWithKubeconfig\b/e2ekubectl.RunKubemciWithKubeconfig/" \
-e "s/framework.SingleContainerSummary\b/e2edebug.SingleContainerSummary/" \
-e "s/framework.SingleLogSummary\b/e2edebug.SingleLogSummary/" \
-e "s/framework.TimestampedSize\b/e2edebug.TimestampedSize/" \
-e "s/framework.WaitForAllNodesSchedulable\b/e2enode.WaitForAllNodesSchedulable/" \
-e "s/framework.WaitForSSHTunnels\b/e2enode.WaitForSSHTunnels/" \
-e "s/framework.WorkItem\b/e2edebug.WorkItem/" \
"$@"
for i in "$@"; do
# Import all sub packages and let goimports figure out which of those
# are redundant (= already imported) or not needed.
sed -i -e '/"k8s.io.kubernetes.test.e2e.framework"/a e2edebug "k8s.io/kubernetes/test/e2e/framework/debug"' "$i"
sed -i -e '/"k8s.io.kubernetes.test.e2e.framework"/a e2ekubectl "k8s.io/kubernetes/test/e2e/framework/kubectl"' "$i"
sed -i -e '/"k8s.io.kubernetes.test.e2e.framework"/a e2enode "k8s.io/kubernetes/test/e2e/framework/node"' "$i"
sed -i -e '/"k8s.io.kubernetes.test.e2e.framework"/a e2eoutput "k8s.io/kubernetes/test/e2e/framework/pod/output"' "$i"
sed -i -e '/"k8s.io.kubernetes.test.e2e.framework"/a e2epod "k8s.io/kubernetes/test/e2e/framework/pod"' "$i"
sed -i -e '/"k8s.io.kubernetes.test.e2e.framework"/a e2eproviders "k8s.io/kubernetes/test/e2e/framework/providers"' "$i"
goimports -w "$i"
done
2022-10-06 08:19:47 +02:00
Patrick Ohly
92047da152
e2e: make import blocks consistent
2022-10-06 08:16:47 +02:00
Patrick Ohly
5614a9d064
e2e framework: eliminate interim sub packages
...
The "todo" packages were necessary while moving code around to avoid hitting
cyclic dependencies. Now that any sub package can depend on the framework, they
are no longer needed and the code can be moved into the normal sub packages.
2022-10-06 08:16:47 +02:00
Patrick Ohly
2d21acb1be
e2e framework: eliminate redundant framework/[log|ginkgowrapper]
...
These sub packages were created by mistake. Logging and failure handling are
core features and must be implemented in the framework package.
2022-10-06 08:16:47 +02:00
Patrick Ohly
a46fea53e6
e2e framework: move pod exec and create into sub package
2022-10-06 08:16:47 +02:00
Patrick Ohly
8af3258526
e2e framework: move NodeKiller into framework/node
...
This removes some more dependencies from the framework.
Removing the configuration needs to be handled as part of refactoring the
TestContext.
2022-10-06 08:16:47 +02:00
Patrick Ohly
70d0824f01
e2e framework: move resource gathering into framework/debug
...
This helps getting rid of the ssh dependency. The same init package as for
dumping namespaces takes care of adding the functionality back to framework
instances.
2022-10-06 08:16:47 +02:00
Patrick Ohly
f9bc4f837b
e2e framework: move log size verification into framework/debug
...
This helps getting rid of the ssh dependency. The same init package as for
dumping namespaces takes care of adding the functionality back to framework
instances.
2022-10-06 08:16:47 +02:00
Patrick Ohly
802451b6ca
e2e framework: move metrics gathering into sub package
...
This reduces the size of the test/e2e/framework itself. Because it does not
gather metrics data anymore by default, E2E test suites must set their
callbacks function or set the original one by importing
"k8s.io/kubernetes/test/e2e/framework/todo/metrics/init".
2022-10-06 08:16:47 +02:00
Patrick Ohly
b8d28cb6c3
e2e framework: move node helper code into sub package
...
This reduces the size of the test/e2e/framework itself. Because it does not
check nodes anymore by default, E2E test suites must set their own check
function or set the original one by importing
"k8s.io/kubernetes/test/e2e/framework/todo/node/init".
2022-10-06 08:16:47 +02:00
Patrick Ohly
c45a924c5e
e2e framework: move dumping of information into sub package
...
This reduces the size of the test/e2e/framework itself. Because it does not
dump anything anymore by default, E2E test suites must set their own dump
function or set the original one by importing
"k8s.io/kubernetes/test/e2e/framework/debug/init".
2022-10-06 08:16:47 +02:00
Patrick Ohly
2c8ef492ae
e2e framework: move kubectl and pod helper code
2022-10-06 08:16:47 +02:00
Patrick Ohly
e95c2dbbe3
e2e framework: introduce todo sub packages
2022-10-06 08:16:47 +02:00
Patrick Ohly
37d562b454
e2e framework: support callbacks during framework creation and before each test
...
This will be used as mechanism for invoking some of the code which is currently
hard-coded in the framework once that code is placed in optional packages.
2022-10-06 08:16:47 +02:00
Dan Williams
1687916844
test: demote service ClientIP affinity timeout tests from conformance
...
During the September 29th, 2022 SIG-Network meeting we decided to
demote the two affinity timeout conformance tests. This was because:
(a) there is no documented correct behavior for these tests other than
"what kube-proxy does"
(b) even the kube-proxy behavior differs depending on the backend implementation
of iptables, IPVS, or [win]userspace (and winkernel doesn't at all)
(c) iptables uses only srcip matching, while userspace and IPVS use srcip+srcport
(d) IPVS and iptables have different minimum timeouts and we had
to hack up the test itself to make IPVS pass
(e) popular 3rd party network plugins also vary in their implementation
Our plan is to deprecate the current affinity options and re-add specific
options for various behaviors so it's clear exactly what plugins support
and which behavior (if any) we want to require for conformance in the future.
Signed-off-by: Dan Williams <dcbw@redhat.com >
2022-10-05 09:08:13 -05:00
Kubernetes Prow Robot
a15ce1503c
Merge pull request #112823 from ii/create-service-account-replace-test
...
Write e2e test for replaceCoreV1NamespacedServiceAccount - +1 Endpoint
2022-10-03 19:00:14 -07:00
Stephen Heywood
a3f7da0421
Create e2e test for ServiceAccount endpoint
...
e2e test validates the following 1 endpoint
- replaceCoreV1NamespacedServiceAccount
2022-10-04 09:21:25 +13:00
Kubernetes Prow Robot
725993afce
Merge pull request #112430 from ii/create-limitrange-test
...
Write List, Patch and Delete LimitRange test +3 Endpoints
2022-10-03 10:06:26 -07:00
Kubernetes Prow Robot
9720af2ba3
Merge pull request #112306 from tkashem/v1beta3
...
add v1beta3 for Priority And Fairness
2022-10-03 10:06:14 -07:00
Kubernetes Prow Robot
ecdbb02580
Merge pull request #112790 from sonasingh46/timeout
...
use correct timeout for pod startup wait
2022-09-30 07:36:28 -07:00
Kubernetes Prow Robot
c5ab06f4c7
Merge pull request #112803 from pohly/pod-io-rename
...
e2e storage: add Rename to PodIO
2022-09-30 06:28:29 -07:00
Patrick Ohly
5b63199f46
e2e storage: add Rename to PodIO
...
This is useful for atomic file creation: first create a temporary file, then
rename it.
2022-09-30 13:25:26 +02:00
Kubernetes Prow Robot
b4b67c9ca5
Merge pull request #112781 from humblec/gce-new
...
Update sidecar controllers to latest versions in the e2e
2022-09-29 22:18:28 -07:00
Kubernetes Prow Robot
3af1e5fdf6
Merge pull request #112707 from enj/enj/i/https_links
...
Use https links for k8s KEPs, issues, PRs, etc
2022-09-29 12:34:40 -07:00
Stephen Heywood
12fe011f73
Create e2e test for LimitRange endpoints
...
e2e test validates the following 3 endpoints
- listCoreV1LimitRangeForAllNamespaces
- patchCoreV1NamespacedLimitRange
- deleteCoreV1CollectionNamespacedLimitRange
2022-09-30 07:51:05 +13:00
Kubernetes Prow Robot
0790b711f2
Merge pull request #112586 from ii/create-replication-controller-scale-test
...
Write e2e test for Read, Replace ReplicationController scale endpoints +2 Endpoints
2022-09-29 10:14:39 -07:00
Humble Chirammal
b3a3d8cb6b
Update sidecar controllers to latest versions in the e2e
...
Signed-off-by: Humble Chirammal <hchiramm@redhat.com >
2022-09-29 22:13:11 +05:30
Ashutosh Kumar
17ecb9f740
use correct timeout for pod startup wait
...
Signed-off-by: Ashutosh Kumar <sonasingh46@gmail.com >
2022-09-29 21:13:56 +05:30
Akanksha kumari
f9afd68e3b
Sanitize hostname in network proxy test ( #112763 )
...
* Update Url string to have only one slash
Signed-off-by: Akanksha Kumari <akankshakumari393@gmail.com >
* Trim / from Right in hostname
Signed-off-by: Akanksha Kumari <akankshakumari393@gmail.com >
2022-09-29 04:07:06 -07:00
Stephen Heywood
925fa2785e
Create e2e test for ReplicationController scale endpoints
...
e2e test validates the following 2 endpoints
- readCoreV1NamespacedReplicationControllerScale
- replaceCoreV1NamespacedReplicationControllerScale
2022-09-29 10:15:02 +13:00
Kubernetes Prow Robot
7dc6a81e8b
Merge pull request #111741 from 249043822/br-probe-test-by-informer
...
fix:e2e test flake: Probing container should mark readiness on pods to false...
2022-09-26 16:08:14 -07:00
Abu Kashem
66fc0d7037
rename assuredConcurrencyShares for flowcontrol v1beta3
2022-09-26 15:34:10 -04:00
Arda Güçlü
0303535506
Add e2e tests for events command ( #111855 )
...
* Add e2e tests for events command
* Run events tests as normal e2e instead conformance
Conformance tests are only for GA features. Since `kubectl events`
currently is in alpha stage, e2e tests for this command should be
run as standard e2e.
2022-09-26 08:10:08 -07:00
ZhangKe10140699
4f19b10567
fix:e2e test flake: Probing container should mark readiness on pods to false
2022-09-26 09:55:19 +08:00
Monis Khan
b738be9b46
Use https links for k8s KEPs, issues, PRs, etc
...
Signed-off-by: Monis Khan <mok@microsoft.com >
2022-09-23 23:36:24 +00:00
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
b7d9082504
Merge pull request #112445 from RomanBednar/retro-sc-e2e
...
e2e storage: add test for retroactive storage class assignment feature
2022-09-22 12:51:15 -07:00
Kubernetes Prow Robot
188b65c92f
Merge pull request #110826 from humblec/test-failure
...
Fix the test failure on volume snapshot
2022-09-22 12:50:52 -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
Abu Kashem
6edc251686
apiserver: update apf tests to use v1beta3
2022-09-21 18:54:20 -04:00
Piotr Nosek
96ff1b1bcb
Fix HPA E2E CRD test
2022-09-21 22:39:47 +00:00
Roman Bednar
f765e191d1
add e2e test for retroactive storage class feature
2022-09-21 10:52:28 +02:00