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
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
Dave Chen
857458cfa5
update ginkgo from v1 to v2 and gomega to 1.19.0
...
- update all the import statements
- run hack/pin-dependency.sh to change pinned dependency versions
- run hack/update-vendor.sh to update go.mod files and the vendor directory
- update the method signatures for custom reporters
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-08 10:44:46 +08:00
Sergiusz Urbaniak
373c08e0c7
test/e2e/framework: configure pod security admission level for e2e tests
2022-03-28 15:42:10 +02:00
Tim Hockin
11a25bfeb6
De-share the Handler struct in core API ( #105979 )
...
* De-share the Handler struct in core API
An upcoming PR adds a handler that only applies on one of these paths.
Having fields that don't work seems bad.
This never should have been shared. Lifecycle hooks are like a "write"
while probes are more like a "read". HTTPGet and TCPSocket don't really
make sense as lifecycle hooks (but I can't take that back). When we add
gRPC, it is EXPLICITLY a health check (defined by gRPC) not an arbitrary
RPC - so a probe makes sense but a hook does not.
In the future I can also see adding lifecycle hooks that don't make
sense as probes. E.g. 'sleep' is a common lifecycle request. The only
option is `exec`, which requires having a sleep binary in your image.
* Run update scripts
2021-10-29 13:15:11 -07:00
Claudiu Belu
b87cc616b5
tests: Refactors daemonset utils into framework
...
Creates test/e2e/framework/daemonset, which contains commonly
used daemonset-related operations, deduplicating the code for it.
2021-10-21 18:54:38 +03:00
Kubernetes Prow Robot
727b4307f0
Merge pull request #102348 from ii/promote-daemonset-status-test
...
Promote Read, Patch & Replace DaemonSet Status e2e test to Conformance +3 endpoints
2021-06-16 09:43:59 -07:00
Stephen Heywood
5ca47deb0a
Promote DaemonSet Status e2e test to Conformance
2021-06-16 13:08:22 +12:00
Stephen Heywood
e89d2a7779
Promote Daemonset list and deleteCollection e2e test to Conformance
2021-05-26 14:30:43 +12:00
Kubernetes Prow Robot
d036dd20e1
Merge pull request #100507 from ii/daemonset-status-test
...
Write AppsV1DaemonSetStatus test - +3 endpoints
2021-05-24 16:18:33 -07:00
Kubernetes Prow Robot
d8f9e4587a
Merge pull request #101742 from ravisantoshgudimetla/promote-maxSurge-beta
...
Promote DS MaxSurge to beta
2021-05-23 04:33:38 -07:00
Stephen Heywood
683138f911
Create e2e daemon set status lifecycle test
...
e2e test validates the following 3 extra endpoints
- replaceAppsV1NamespacedDaemonSetStatus
- readAppsV1NamespacedDaemonSetStatus
- patchAppsV1NamespacedDaemonSetStatus
2021-05-21 11:58:11 +12:00
Kubernetes Prow Robot
4e0245389f
Merge pull request #101995 from ii/Riaankl-daemonset-list-deletecollection
...
Write List and DeleteCollection DaemonSet Test +2 endpoints
2021-05-19 15:25:15 -07:00
ravisantoshgudimetla
040e9c8b51
Promote DS MaxSurge to beta
2021-05-19 16:12:52 -04:00
Kubernetes Prow Robot
eb326fdc07
Merge pull request #100262 from chaitanyabandi/daemon-ns-patch
...
use Patch API to add namespace annotations
2021-04-29 11:36:11 -07:00
Riaan Kleinhans
0733bcde2f
Create List and DeleteCollection DaemonSet Test
...
Co-Authored-By: Riaan Kleinhans <riaan@ii.coop>
e2e test validates the following 2 extra endpoints
- listAppsV1ReplicaSetForAllNamespaces
- deleteAppsV1CollectionNamespacedReplicaSet
2021-04-27 11:50:47 +12:00
ravisantoshgudimetla
f339061816
Tighten DS rollout catching function
2021-03-19 16:02:41 -04:00
Maciej Szulik
d30e79d090
Add more details to daemon set test
2021-03-16 18:39:14 +01:00
Chaitanya Bandi
93be90da9a
use Patch API to add namespace annotations
...
While adding annotations to the namespace, using the Update API may result in
conflicts as "the object has been modified; please apply your changes to the
latest version and try again". Use Patch API to avoid this.
Signed-off-by: Chaitanya Bandi <kbandi@cs.stonybrook.edu>
2021-03-15 15:13:36 -07:00
Clayton Coleman
18f43e4120
daemonset: Implement MaxSurge on daemonset update
...
If MaxSurge is set, the controller will attempt to double up nodes
up to the allowed limit with a new pod, and then when the most recent
(by hash) pod is ready, trigger deletion on the old pod. If the old
pod goes unready before the new pod is ready, the old pod is immediately
deleted. If an old pod goes unready before a new pod is placed on that
node, a new pod is immediately added for that node even past the MaxSurge
limit.
The backoff clock is used consistently throughout the daemonset controller
as an injectable clock for the purposes of testing.
2021-03-01 13:21:12 -05:00
David Eads
64c099d670
remove secondary client retries in e2e tests
2020-10-15 08:30:42 -04:00
Jefftree
ace97738e2
Update formatting of conformance comment
2020-07-29 20:50:44 -07:00
Stephen Heywood
1077a9e862
Add missing release metadata for e2e tests
2020-07-27 21:56:49 +00:00
wawa0210
9d1948a2f5
fix test/e2e/apps staticcheck
2020-07-02 18:14:12 +08:00
Abdullah Gharaibeh
bed9b2f23b
Cleanup obsolete NodeInfo methods
2020-04-12 18:13:46 -04:00
Abdullah Gharaibeh
a5d8172715
move nodeinfo type to framework pkg
2020-04-07 10:25:24 -04:00
Abdullah Gharaibeh
ed3fe054df
move scheduler nodeinfo to pkg/scheduler/types
2020-03-31 21:02:09 -04:00
drfish
f4da086cbe
Move resource methods from e2e fw to e2e resource fw
2020-03-08 15:27:49 +08:00
Mike Danese
c58e69ec79
automated refactor
2020-03-05 14:59:46 -08:00
Mike Danese
25651408ae
generated: run refactor
2020-02-08 12:30:21 -05:00
Mike Danese
3aa59f7f30
generated: run refactor
2020-02-07 18:16:47 -08:00
Abdullah Gharaibeh
041e5b5560
addressed comments
2020-01-04 01:14:24 -05:00
Abdullah Gharaibeh
7d604c318c
Break DS controller on scheduler predicates and predicate errors
2020-01-03 13:05:07 -05:00
tanjunchen
f786cb07b7
test/e2e/: use framework.Equal() replace gomega.Expect(...).To(gomega.BeTrue()|BeFalse())
2019-12-13 10:11:47 +08:00
Kenichi Omichi
eb9d1cb5cc
Move functions from e2e/framework/util.go Part-2
...
This PR moves functions from test/e2e/framework.util.go for making e2e
core framework small and simple:
- RestartKubeProxy: Moved to e2e network package
- CheckConnectivityToHost: Moved to e2e network package
- RemoveAvoidPodsOffNode: Move to e2e scheduling package
- AddOrUpdateAvoidPodOnNode: Move to e2e scheduling package
- UpdateDaemonSetWithRetries: Move to e2e apps package
- CheckForControllerManagerHealthy: Moved to e2e storage package
- ParseKVLines: Removed because of e9345ae5f0
- AddOrUpdateLabelOnNodeAndReturnOldValue: Removed because of ff7b07c43c
2019-11-06 03:59:28 +00:00
Kubernetes Prow Robot
cae9bbd059
Merge pull request #81358 from bclau/tests/replace-redis-image
...
tests: Replaces Redis image with Agnhost
2019-10-16 22:24:51 -07:00
Dan Winship
ec4c1a1c05
Add e2enode.GetRandomReadySchedulableNode, replace some uses of framework.GetReadySchedulableNodesOrDie
...
For tests that want a single ready, schedulable node
2019-09-24 13:03:40 -04:00
Dan Winship
71b02dd422
Fix up e2enode.GetReadySchedulableNodes, replace many uses of framework.GetReadySchedulableNodesOrDie
...
Remove the "OrDie" from the name (since it doesn't "or die") and add
an extra check that there is at least 1 node available, since many
callers already did that themselves, and many others should have.
2019-09-24 13:03:39 -04:00
Claudiu Belu
b91aa9a5c3
tests: Replaces Redis image with Agnhost
...
Some tests are using the Redis image, but they do not explicitly need it.
This commit replaces the usage of the Redis image with the Agnhost image
in such test cases.
2019-09-09 00:25:18 -07:00
toyoda
c3fdb5e7d9
Use log functions of core framework on test/e2e/apps
2019-08-26 17:38:11 +09:00
draveness
d3158b2c71
feat: use framework.ExpectNotEqual in e2e test
2019-07-10 21:36:26 +08:00
tanshanshan
2c130b236c
Use ExpectEqual under apps
2019-07-04 08:43:42 +08:00
Antonio Ojea
410df752cd
Add ipv6 support to [sig-apps] StatefulSet e2e test
...
Use httpd docker images instead of nginx because they listen
by default both in IPv4 and IPv6
2019-06-23 17:23:28 +02:00
Kubernetes Prow Robot
dc8b928136
Merge pull request #79162 from SataQiu/fix-test-20190619
...
Refactor: replace framework.Failf with e2elog.Failf
2019-06-21 12:17:04 -07:00
Aaron Crickenberger
0aae740ede
add import-alias for k8s.io/api/apps/v1
2019-06-20 11:39:40 -07:00
SataQiu
332be4b1e3
refactor: replace framework.Failf with e2elog.Failf
2019-06-19 17:52:35 +08:00
toyoda
4841e5b98c
use framework.ExpectNoError() for daemon_set.go and deployment.go in e2e/apps
2019-05-14 08:44:54 +09:00
draveness
c045046e5b
feat: use framework.ExpectNoError instead in e2e test
2019-05-10 09:53:10 +08:00
hui luo
4d4e4f4056
Modify apimachinery,apps,instrumentation tests to import framework/log
...
This is part of the transition to using framework/log instead
of the Logf inside the framework package. This will help with
import size/cycles when importing the framework or subpackages
2019-05-08 16:46:39 -07:00
SataQiu
03180ec2b2
fix golint failures of test/e2e/apps
2019-04-17 19:04:51 +08:00