Rafa de Castro
a887a3b4fd
Changed code to improve output messages on error for files under test/e2e/apps ( #109944 )
...
* Improving the output of tests in case of error
* Better error message
Also, the condition in the second case was reversed
* Fixing 2 tests whose condition was inverted
* Again I got the conditions wrong
* Sorry for the confusion
* Improved error messages on failures
2023-01-11 02:11:44 -08:00
Patrick Ohly
2f6c4f5eab
e2e: use Ginkgo context
...
All code must use the context from Ginkgo when doing API calls or polling for a
change, otherwise the code would not return immediately when the test gets
aborted.
2022-12-16 20:14:04 +01:00
Patrick Ohly
df5d84ae81
e2e: accept context from Ginkgo
...
Every ginkgo callback should return immediately when a timeout occurs or the
test run manually gets aborted with CTRL-C. To do that, they must take a ctx
parameter and pass it through to all code which might block.
This is a first automated step towards that: the additional parameter got added
with
sed -i 's/\(framework.ConformanceIt\|ginkgo.It\)\(.*\)func() {$/\1\2func(ctx context.Context) {/' \
$(git grep -l -e framework.ConformanceIt -e ginkgo.It )
$GOPATH/bin/goimports -w $(git status | grep modified: | sed -e 's/.* //')
log_test.go was left unchanged.
2022-12-10 19:50:18 +01: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
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
1495c9f2cd
test/e2e/*: default existing tests to privileged pod security policy
...
This is to ensure that all existing tests don't break when defaulting
the pod security policy to restricted in the e2e test framework.
2022-04-05 08:41:12 +02:00
Sergiusz Urbaniak
373c08e0c7
test/e2e/framework: configure pod security admission level for e2e tests
2022-03-28 15:42:10 +02:00
ravisantoshgudimetla
2c116055f7
[disruptioncontroller] Don't error for unmanaged pods
...
As of now, we allow PDBs to be applied to pods via
selectors, so there can be unmanaged pods(pods that
don't have backing controllers) but still have PDBs associated.
Such pods are to be logged instead of immediately throwing
a sync error. This ensures disruption controller is
not frequently updating the status subresource and thus
preventing excessive and expensive writes to etcd.
2021-07-07 10:42:24 -04:00
Jordan Liggitt
a07d4460bf
Promote e2e eviction test to conformance
2021-04-14 09:12:39 -04:00
Jordan Liggitt
10b07085f8
Define constant for eviction failure cause
2021-04-14 09:12:39 -04:00
Jordan Liggitt
33ad842480
allow evictions subresource to accept policy/v1 and policy/v1beta1
2021-04-13 21:22:25 -04:00
Jordan Liggitt
e7b0ec5857
Replicate update/patch operations from eviction test in conformance CRUD test
2021-03-15 16:54:45 -04:00
Jordan Liggitt
be58ad6fec
Promote PDB CRUD e2e tests to conformance
2021-03-10 11:02:47 -05:00
Morten Torkildsen
08e0a46757
Promote PodDisruptionBudget e2e test to Conformance
2021-03-09 12:26:02 -08:00
Morten Torkildsen
66e722765a
Update e2e tests to use the policy v1 api
2021-03-09 10:29:11 -05:00
hasheddan
a527c10edc
Make sure pod tested for eviction with PDB is not scheduled for deletion
...
In #91342 attempting to evict a Pod with a DeletionTimestamp caused
checking of PDBs to be ignored due to the fact that a Pod scheduled for
deletion should not be factored into a disruption budget. However, PDB
eviction tests currently will sometimes select a Pod already scheduled
for deletion, expecting that attempting to evict it will conflict with
the PDB. This updates those tests to make sure a Pod with deletion
timestamp is not selected for eviction when it is intended to violate a
PDB.
Signed-off-by: hasheddan <georgedanielmangum@gmail.com>
2020-07-11 11:25:19 -05:00
Ciprian Hacman
9a23ee02b3
Use Pause image for DisruptionController tests
2020-07-08 06:40:41 +03:00
wawa0210
9d1948a2f5
fix test/e2e/apps staticcheck
2020-07-02 18:14:12 +08:00
Kubernetes Prow Robot
74bdc2b6a9
Merge pull request #90321 from k-toyoda-pi/add_error_check_e2e_disruption
...
Add checking error for disruption e2e test
2020-06-04 07:05:14 -07:00
toyoda
47e4f51da2
Add checking error for disruption e2e test
2020-04-21 09:52:49 +09:00
toyoda
64fee7d58b
Remove unnecessary return value in e2e/apps/disruption
2020-04-13 15:04:00 +09:00
toyoda
effd064ef7
Add error check for marshaling json
2020-04-08 15:26:10 +09:00
Kubernetes Prow Robot
a480f07b99
Merge pull request #88798 from k-toyoda-pi/update_e2e_for_pdb
...
Improve waitForPDBCollectionToBeDeleted in e2e test
2020-03-19 17:44:36 -07:00
Jordan Liggitt
d8abacba40
client-go: update expansions callers
2020-03-06 16:50:41 -05:00
Jordan Liggitt
b7c2faf26c
client-go dynamic client: add context to callers
2020-03-06 10:56:23 -05:00
Mike Danese
c58e69ec79
automated refactor
2020-03-05 14:59:46 -08:00
toyoda
bf58facaef
Update waitForPDBCollectionToBeDeleted in e2e test
2020-03-04 17:31:50 +09:00
Nan Yu
b757ca16e2
Add more E2E tests for the ../poddisruptionbudgets endpoint
2020-02-18 11:19:30 -08:00
Kubernetes Prow Robot
c9d4257cbc
Merge pull request #87819 from mortent/SerialFlakyPDBTests
...
Make DisruptionController eviction tests serial to avoid flakes
2020-02-11 23:14:55 -08:00
Morten Torkildsen
95ddc029fa
Make DisruptionController eviction tests serial to avoid flakes
2020-02-09 13:41:07 -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
Morten Torkildsen
4673731c0b
Make sure PDB has observed pods before doing eviction in e2e test
2020-01-14 12:21:05 -08:00
toyoda
91dca8ff8c
Use e2eskipper package in e2e/apps
2020-01-10 15:08:19 +09:00
Morten Torkildsen
81a6cf2847
Change PDB tests to use pod conditions instead of phase
2020-01-07 08:47:47 -08:00
Nan Yu
1fb0dd4ec5
Rename PodDisruptionsAllowed to DisruptionsAllowed in type PodDisruptionBudgetStatus
2019-12-03 14:26:35 -08:00
toyoda
c3fdb5e7d9
Use log functions of core framework on test/e2e/apps
2019-08-26 17:38:11 +09:00
Aaron Crickenberger
1d0d98dbc5
add import-alias for k8s.io/api/policy/v1beta1
2019-06-20 11:40:37 -07:00
Aaron Crickenberger
0aae740ede
add import-alias for k8s.io/api/apps/v1
2019-06-20 11:39:40 -07:00
draveness
95a6376899
feat: use framework.ExpectNoError in e2e apps disruption
2019-05-15 10:10:23 +08:00
David McCormick
5b9e4f1e88
Rebase allow updates to pdbs to latest upstream master
2019-05-14 12:25:22 +01: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
toyoda
2c098b37e3
use framework.ExpectNoError() for e2e/apps
2019-04-26 19:23:12 +09:00
SataQiu
03180ec2b2
fix golint failures of test/e2e/apps
2019-04-17 19:04:51 +08:00
Weibin Lin
842bd1e1ec
update deployment, daemonset, replicaset, statefulset to apps/v1
2018-12-19 10:46:45 -05:00
liz
b814c5677f
Collect all the assorted image URLs from e2e tests in one place
...
utils/image/manifest has an additional `arch` parameter, which determines
whether an image ends in `-$ARCH` (like `-amd64`).
All locations that previously had gcr.io urls referenced in costants or inline
have been updated to refere test/utils/image.
2017-12-19 12:16:07 -05:00
Tim Hockin
eba5b6092a
Use k8s.gcr.io vanity domain for container images
2017-12-18 09:18:34 -08:00
Kubernetes Submit Queue
6b66131034
Merge pull request #56413 from supereagle/policy-client-with-version
...
Automatic merge from submit-queue (batch tested with PRs 56413, 56322, 56490, 56460, 56487). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md ">here</a>.
Use policy client with explicit version
**What this PR does / why we need it**:
**Which issue(s) this PR fixes** :
Fixes partially #55993
**Special notes for your reviewer**:
/cc @caesarxuchao @sttts
**Release note**:
```release-note
NONE
```
2017-12-15 16:43:47 -08:00
supereagle
79352bafaa
use policy client with explicit version
2017-11-27 22:42:00 +08:00
supereagle
9c02d7e38c
use extensions client with explicit version
2017-11-22 21:18:14 +08:00