PatrickLaabs
e74bbd5db4
chore: depr. pointer pkg replacement for test/e2e
2025-07-06 22:32:21 +02:00
Stanislav Láznička
e0f536bf1f
use the ClusterTrustBundles beta API
2025-03-11 18:07:24 +01:00
Jordan Liggitt
628d107b61
Switch cluster trust bundle e2e tests to generic alpha feature + feature gates
...
This relies on WithFeatureGate adding [Feature:OffByDefault]. Without that, the
test would start to run in jobs which don't enable the feature.
2025-03-10 12:04:04 -07:00
Vinayak Goyal
453e22a166
Remove unused service account creation from node_authn.go
2025-02-13 19:27:33 +00:00
carlory
e68cc0a6ed
remove feature label FSGroup
2025-01-17 15:35:26 +08:00
Kubernetes Prow Robot
2d0a4f7556
Merge pull request #129166 from kannon92/move-node-features-to-features
...
[KEP-3041]: deprecate nodefeature for feature labels
2025-01-14 20:02:33 -08:00
carlory
c9bfc3b455
use ginkgo.DeferCleanup to do cleanup tasks
2025-01-02 15:25:52 +01:00
Stanislav Láznička
129418b9a9
e2e: ctb: make it possible to run the tests in parallel
2025-01-02 15:22:42 +01:00
Kevin Hannon
8495df64b2
deprecate nodefeature for feature labels
2024-12-17 13:58:12 -05:00
Kubernetes Prow Robot
2e0cc1befe
Merge pull request #127943 from ii/promote-serviceaccounttoken-test
...
Promote ServiceAccount e2e test to Conformance
2024-11-11 18:12:45 +00:00
Stanislav Láznička
7b3a9db089
e2e: ctb: run the tests as Serial for now
2024-11-05 16:59:08 +01:00
Kubernetes Prow Robot
ec16c90aaf
Merge pull request #126593 from stlaz/trustbundles-e2e
...
KEP-3257: e2e: extend cluster trust bundles coverage
2024-10-19 00:51:03 +01:00
Stanislav Láznička
3ec3736d66
e2e: extend cluster trust bundles coverage
2024-10-18 12:30:13 +02:00
Jordan Liggitt
0771f601e1
KEP-4193: Promote ServiceAccountTokenJTI, ServiceAccountTokenPodNodeInfo, ServiceAccountTokenNodeBindingValidation to stable
2024-10-17 21:25:09 -04:00
Stephen Heywood
04a4edb083
Promote ServiceAccount e2e test to Conformance
2024-10-09 10:49:03 +13:00
Kubernetes Prow Robot
9c610d1082
Merge pull request #127768 from ii/create-serviceaccounttoken-test
...
Write e2e test for CoreV1 ServiceAccountToken +1 Endpoint
2024-10-07 20:46:22 +01:00
David Eads
38fd067e92
demonstrate VAP restricting action per-node
2024-10-02 15:09:24 -04:00
Stephen Heywood
28f17c6e93
Create e2e test for ServiceAccount endpoint
...
e2e test validates the following endpoint
- createCoreV1NamespacedServiceAccountToken
2024-10-02 08:31:15 +13:00
Taahir Ahmed
bd6431323a
ClusterTrustBundle projection: e2e test
2023-11-03 12:08:35 -07:00
Patrick Ohly
f2cfbf44b1
e2e: use framework labels
...
This changes the text registration so that tags for which the framework has a
dedicated API (features, feature gates, slow, serial, etc.) those APIs are
used.
Arbitrary, custom tags are still left in place for now.
2023-11-01 15:17:34 +01:00
Patrick Ohly
f2d34426f8
e2e: enhance SIGDescribe
...
framework.SIGDescribe is better because:
- Ginkgo uses the source code location of the test, not of the wrapper,
when reporting progress.
- Additional annotations can be passed.
To make this a drop-in replacement, framework.SIGDescribe generates a function
that can be used instead of the former SIGDescribe functions.
windows.SIGDescribe contained some additional code to ensure that tests are
skipped when not running with a suitable node OS. This gets moved into a
separate wrapper generator, to allow using framework.SIGDescribe as intended.
To ensure that all callers were modified, the windows.sigDescribe isn't
exported anymore (wasn't necessary in the first place!).
2023-10-10 18:15:49 +02:00
Patrick Ohly
0e8a1f1816
e2e: remove redundant spaces in test names
...
The spaces are redundant because Ginkgo will add them itself when concatenating
the different test name components. Upcoming change in the framework will
enforce that there are no such redundant spaces.
2023-09-29 08:30:57 +02:00
Kubernetes Prow Robot
a759bf2b1e
Merge pull request #119461 from carlory/cleanup-e2e-auth-framework-equal
...
e2e_auth: stop using deprecated framework.ExpectEqual
2023-09-06 05:35:19 -07:00
carlory
36d3672249
e2e_auth: stop using deprecated framework.ExpectEqual
2023-09-06 18:29:28 +08:00
Kubernetes Prow Robot
84faedfbfe
Merge pull request #119989 from bzsuni/cleanup/e2e/auth
...
[e2e_auth] stop using deprecated framework.ExpectNotEqual
2023-09-02 07:33:11 -07:00
bzsuni
145dbb6acc
stop using deprecated framework.ExpectNotEqual
...
Signed-off-by: bzsuni <bingzhe.sun@daocloud.io >
2023-08-22 09:53:04 +08:00
liyuerich
3546831ceb
e2e_storage: stoping using deprecated framework.ExpectEmpty
2023-08-21 09:18:18 +08:00
Stanislav Laznicka
7f532891c9
e2e tests: set all PSa labels instead of just enforcing
2023-06-21 15:05:13 +02:00
m.nabokikh
7c5573d326
Fix cmd, integration, and conformance tests
...
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com >
2023-05-03 01:29:37 +02:00
m.nabokikh
40de26dcff
KEP-3325: Promote SelfSubjectReview to GA
...
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com >
2023-05-02 14:50:40 +02:00
m.nabokikh
d5aa8351e3
Fix DescribeTable for selfsubjectreview e2e
...
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com >
2023-03-13 20:06:10 +01:00
Maksim Nabokikh
c1431af4f8
KEP-3325: Promote SelfSubjectReview to Beta ( #116274 )
...
* Promote SelfSubjectReview to Beta
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com >
* Fix whoami API
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com >
* Fixes according to code review
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com >
---------
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com >
2023-03-08 15:42:33 -08:00
Patrick Ohly
136f89dfc5
e2e: use error wrapping with %w
...
The recently introduced failure handling in ExpectNoError depends on error
wrapping: if an error prefix gets added with `fmt.Errorf("foo: %v", err)`, then
ExpectNoError cannot detect that the root cause is an assertion failure and
then will add another useless "unexpected error" prefix and will not dump the
additional failure information (currently the backtrace inside the E2E
framework).
Instead of manually deciding on a case-by-case basis where %w is needed, all
error wrapping was updated automatically with
sed -i "s/fmt.Errorf\(.*\): '*\(%s\|%v\)'*\",\(.* err)\)/fmt.Errorf\1: %w\",\3/" $(git grep -l 'fmt.Errorf' test/e2e*)
This may be unnecessary in some cases, but it's not wrong.
2023-02-06 15:39:13 +01:00
Patrick Ohly
1e346c4e4a
e2e pod: convert ProxyResponseChecker into matcher
...
Instead of pod responses being printed to the log each time polling fails, we
get a consolidated failure message with all unexpected pod responses if (and
only if) the check times out or a progress report gets produced.
2023-02-06 15:39:13 +01:00
Antonio Ojea
7f5ae1c0c1
Revert "e2e: wait for pods with gomega"
2023-02-06 12:08:22 +01:00
Patrick Ohly
222f655062
e2e: use error wrapping with %w
...
The recently introduced failure handling in ExpectNoError depends on error
wrapping: if an error prefix gets added with `fmt.Errorf("foo: %v", err)`, then
ExpectNoError cannot detect that the root cause is an assertion failure and
then will add another useless "unexpected error" prefix and will not dump the
additional failure information (currently the backtrace inside the E2E
framework).
Instead of manually deciding on a case-by-case basis where %w is needed, all
error wrapping was updated automatically with
sed -i "s/fmt.Errorf\(.*\): '*\(%s\|%v\)'*\",\(.* err)\)/fmt.Errorf\1: %w\",\3/" $(git grep -l 'fmt.Errorf' test/e2e*)
This may be unnecessary in some cases, but it's not wrong.
2023-01-31 13:01:39 +01:00
Patrick Ohly
5d8e970be6
e2e pod: convert ProxyResponseChecker into matcher
...
Instead of pod responses being printed to the log each time polling fails, we
get a consolidated failure message with all unexpected pod responses if (and
only if) the check times out or a progress report gets produced.
2023-01-31 13:01:39 +01:00
Stephen Heywood
befb7d4a6a
Promote SubjectAccessReview e2e test to Conformance
2023-01-09 11:24:05 +13: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
Kubernetes Prow Robot
8c23f06aaa
Merge pull request #114345 from ii/create-subjectaccessreview-test
...
Write e2e test for SubjectAccessReview & createAuthorizationV1NamespacedLocalSubjectAccessReview +2 Endpoints
2022-12-15 13:21:47 -08:00
Stephen Heywood
247c23abaf
Create e2e test for SubjectAccessReview endpoints
...
e2e test validates the following 2 endpoints
- createAuthorizationV1SubjectAccessReview
- createAuthorizationV1NamespacedLocalSubjectAccessReview
2022-12-16 07:42:50 +13:00
Patrick Ohly
d4729008ef
e2e: simplify test cleanup
...
ginkgo.DeferCleanup has multiple advantages:
- The cleanup operation can get registered if and only if needed.
- No need to return a cleanup function that the caller must invoke.
- Automatically determines whether a context is needed, which will
simplify the introduction of context parameters.
- Ginkgo's timeline shows when it executes the cleanup operation.
2022-12-13 08:09:01 +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
Stephen Heywood
5ad48780ae
Promote ServiceAccount e2e test to Conformance
2022-10-10 12:12:17 +13: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
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
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
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
Kubernetes Prow Robot
4ab90ccebb
Merge pull request #109719 from stlaz/e2e_nodeauthn_nosasecret
...
auth e2e: node_authn test: don't expect a SA secret
2022-05-19 15:13:53 -07:00