Skip to content

Commit 207f058

Browse files
committed
fine tune
Signed-off-by: Wantong Jiang <[email protected]>
1 parent 0495c2e commit 207f058

14 files changed

+50
-64
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,13 +89,13 @@ jobs:
8989
strategy:
9090
fail-fast: false
9191
matrix:
92-
customized-settings: [default, serial, custom]
92+
customized-settings: [default, joinleave, custom]
9393
include:
9494
- customized-settings: default
9595
# to shorten the test duration, set the resource snapshot creation interval to 0
9696
resource-snapshot-creation-minimum-interval: 0m
9797
resource-changes-collection-duration: 0m
98-
- customized-settings: serial
98+
- customized-settings: joinleave
9999
# to shorten the test duration, set the resource snapshot creation interval to 0
100100
resource-snapshot-creation-minimum-interval: 0m
101101
resource-changes-collection-duration: 0m
@@ -136,9 +136,9 @@ jobs:
136136
- name: Run e2e tests
137137
run: |
138138
if [ "${{ matrix.customized-settings }}" = "default" ]; then
139-
make e2e-tests-parallel
140-
elif [ "${{ matrix.customized-settings }}" = "serial" ]; then
141-
make e2e-tests-serial
139+
make e2e-tests LABEL_FILTER="!custom && !joinleave"
140+
elif [ "${{ matrix.customized-settings }}" = "joinleave" ]; then
141+
make e2e-tests LABEL_FILTER="!custom && joinleave"
142142
else
143143
make e2e-tests-custom
144144
fi

CLAUDE.md

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,6 @@ make setup-clusters MEMBER_CLUSTER_COUNT=5
6464
# Run parallel E2E tests (default - excludes custom tests)
6565
make e2e-tests
6666

67-
# Run tests that can run in parallel
68-
make e2e-tests-parallel
69-
70-
# Run serial tests (tests that must run sequentially)
71-
make e2e-tests-serial
72-
73-
# Run custom configuration tests
74-
make e2e-tests-custom
75-
7667
# Clean up test clusters
7768
make clean-e2e-tests
7869
```

Makefile

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -211,17 +211,12 @@ install-helm: load-hub-docker-image load-member-docker-image install-member-age
211211
.PHONY: e2e-tests-v1alpha1
212212
e2e-tests-v1alpha1: create-kind-cluster run-e2e-v1alpha1
213213

214+
# E2E test label filter (can be overridden)
215+
LABEL_FILTER ?= !custom
216+
214217
.PHONY: e2e-tests
215218
e2e-tests: setup-clusters
216-
cd ./test/e2e && ginkgo --timeout=70m --label-filter="!custom" -v -p .
217-
218-
# Tests that can be run in parallel
219-
e2e-tests-parallel: setup-clusters
220-
cd ./test/e2e && ginkgo --label-filter="!custom && !serial" -v -p .
221-
222-
# Tests that must be run serially
223-
e2e-tests-serial: setup-clusters
224-
cd ./test/e2e && ginkgo --label-filter="!custom && serial" -v .
219+
cd ./test/e2e && ginkgo --timeout=70m --label-filter="$(LABEL_FILTER)" -v -p .
225220

226221
e2e-tests-custom: setup-clusters
227222
cd ./test/e2e && ginkgo --label-filter="custom" -v -p .

test/e2e/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ test suites, follow the steps below:
4040
ginkgo --label-filter="custom" -v -p .
4141
```
4242

43-
or run the serial e2e tests with the following command
43+
or run tests involving member cluster join/leave scenarios with the following command (serially)
4444
```sh
45-
ginkgo --label-filter="serial" -v .
45+
ginkgo --label-filter="joinleave" -v .
4646
```
4747

4848
or create a launch.json in your vscode workspace.

test/e2e/drain_tool_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import (
3535
toolsutils "github.com/kubefleet-dev/kubefleet/tools/utils"
3636
)
3737

38-
var _ = Describe("Drain cluster successfully", Label("serial"), Ordered, Serial, func() {
38+
var _ = Describe("Drain cluster successfully", Ordered, Serial, func() {
3939
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
4040
var drainEvictions []placementv1beta1.ClusterResourcePlacementEviction
4141
var drainClusters, noDrainClusters []*framework.Cluster
@@ -120,7 +120,7 @@ var _ = Describe("Drain cluster successfully", Label("serial"), Ordered, Serial,
120120
})
121121
})
122122

123-
var _ = Describe("Drain cluster blocked - ClusterResourcePlacementDisruptionBudget blocks evictions on all clusters", Label("serial"), Ordered, Serial, func() {
123+
var _ = Describe("Drain cluster blocked - ClusterResourcePlacementDisruptionBudget blocks evictions on all clusters", Ordered, Serial, func() {
124124
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
125125
var drainEvictions []placementv1beta1.ClusterResourcePlacementEviction
126126
var testStartTime time.Time
@@ -203,7 +203,7 @@ var _ = Describe("Drain cluster blocked - ClusterResourcePlacementDisruptionBudg
203203
})
204204
})
205205

206-
var _ = Describe("Drain is allowed on one cluster, blocked on others - ClusterResourcePlacementDisruptionBudget blocks evictions on some clusters", Label("serial"), Ordered, Serial, func() {
206+
var _ = Describe("Drain is allowed on one cluster, blocked on others - ClusterResourcePlacementDisruptionBudget blocks evictions on some clusters", Ordered, Serial, func() {
207207
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
208208
var drainEvictions []placementv1beta1.ClusterResourcePlacementEviction
209209
var drainClusters, noDrainClusters []*framework.Cluster

test/e2e/fleet_guard_rail_test.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ var _ = Describe("fleet guard rail tests for deny fleet MC CREATE operations", f
8282
})
8383
})
8484

85-
var _ = Describe("fleet guard rail tests for allow/deny fleet MC UPDATE, DELETE operations", Label("serial"), Serial, Ordered, func() {
85+
var _ = Describe("fleet guard rail tests for allow/deny fleet MC UPDATE, DELETE operations", Serial, Ordered, func() {
8686
mcName := fmt.Sprintf(mcNameTemplate, GinkgoParallelProcess())
8787

8888
BeforeAll(func() {
@@ -346,7 +346,7 @@ var _ = Describe("fleet guard rail tests for allow upstream MC CREATE, DELETE op
346346
})
347347
})
348348

349-
var _ = Describe("fleet guard rail tests for allow/deny upstream MC UPDATE operations", Label("serial"), Serial, Ordered, func() {
349+
var _ = Describe("fleet guard rail tests for allow/deny upstream MC UPDATE operations", Serial, Ordered, func() {
350350
mcName := fmt.Sprintf(mcNameTemplate, GinkgoParallelProcess())
351351

352352
BeforeAll(func() {
@@ -499,7 +499,7 @@ var _ = Describe("fleet guard rail tests for allow/deny upstream MC UPDATE opera
499499
})
500500
})
501501

502-
var _ = Describe("fleet guard rail tests for IMC UPDATE operation, in fleet-member prefixed namespace with user not in MC identity", Label("serial"), Serial, Ordered, func() {
502+
var _ = Describe("fleet guard rail tests for IMC UPDATE operation, in fleet-member prefixed namespace with user not in MC identity", Serial, Ordered, func() {
503503
mcName := fmt.Sprintf(mcNameTemplate, GinkgoParallelProcess())
504504
imcNamespace := fmt.Sprintf(utils.NamespaceNameFormat, mcName)
505505

@@ -578,7 +578,7 @@ var _ = Describe("fleet guard rail tests for IMC UPDATE operation, in fleet-memb
578578
})
579579
})
580580

581-
var _ = Describe("fleet guard rail tests for IMC UPDATE operation, in fleet-member prefixed namespace with user in MC identity", Label("serial"), Serial, Ordered, func() {
581+
var _ = Describe("fleet guard rail tests for IMC UPDATE operation, in fleet-member prefixed namespace with user in MC identity", Serial, Ordered, func() {
582582
mcName := fmt.Sprintf(mcNameTemplate, GinkgoParallelProcess())
583583
imcNamespace := fmt.Sprintf(utils.NamespaceNameFormat, mcName)
584584

@@ -640,7 +640,7 @@ var _ = Describe("fleet guard rail tests for IMC UPDATE operation, in fleet-memb
640640
})
641641
})
642642

643-
var _ = Describe("fleet guard rail for UPDATE work operations, in fleet prefixed namespace with user not in MC identity", Label("serial"), Serial, Ordered, func() {
643+
var _ = Describe("fleet guard rail for UPDATE work operations, in fleet prefixed namespace with user not in MC identity", Serial, Ordered, func() {
644644
mcName := fmt.Sprintf(mcNameTemplate, GinkgoParallelProcess())
645645
imcNamespace := fmt.Sprintf(utils.NamespaceNameFormat, mcName)
646646
workName := fmt.Sprintf(workNamespaceNameTemplate, GinkgoParallelProcess())
@@ -731,7 +731,7 @@ var _ = Describe("fleet guard rail for UPDATE work operations, in fleet prefixed
731731
})
732732
})
733733

734-
var _ = Describe("fleet guard rail for UPDATE work operations, in fleet prefixed namespace with user in MC identity", Label("serial"), Serial, Ordered, func() {
734+
var _ = Describe("fleet guard rail for UPDATE work operations, in fleet prefixed namespace with user in MC identity", Serial, Ordered, func() {
735735
mcName := fmt.Sprintf(mcNameTemplate, GinkgoParallelProcess())
736736
imcNamespace := fmt.Sprintf(utils.NamespaceNameFormat, mcName)
737737
workName := fmt.Sprintf(workNamespaceNameTemplate, GinkgoParallelProcess())
@@ -796,7 +796,7 @@ var _ = Describe("fleet guard rail for UPDATE work operations, in fleet prefixed
796796
})
797797
})
798798

799-
var _ = Describe("fleet guard rail networking E2Es", Label("serial"), Serial, Ordered, func() {
799+
var _ = Describe("fleet guard rail networking E2Es", Serial, Ordered, func() {
800800
Context("deny request to modify fleet networking resources in fleet member namespaces, for user not in member cluster identity", func() {
801801
mcName := fmt.Sprintf(mcNameTemplate, GinkgoParallelProcess())
802802
iseName := fmt.Sprintf(internalServiceExportNameTemplate, GinkgoParallelProcess())
@@ -916,7 +916,7 @@ var _ = Describe("fleet guard rail networking E2Es", Label("serial"), Serial, Or
916916
})
917917
})
918918

919-
var _ = Describe("fleet guard rail restrict internal fleet resources from being created in fleet/kube pre-fixed namespaces", Label("serial"), Serial, Ordered, func() {
919+
var _ = Describe("fleet guard rail restrict internal fleet resources from being created in fleet/kube pre-fixed namespaces", Serial, Ordered, func() {
920920
Context("deny request to CREATE IMC in fleet-system namespace", func() {
921921
It("should deny CREATE operation on internal member cluster resource in fleet-system namespace for invalid user", func() {
922922
imc := clusterv1beta1.InternalMemberCluster{

test/e2e/join_and_leave_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ const (
4343
)
4444

4545
// Note that this container cannot run in parallel with other containers.
46-
var _ = Describe("Test member cluster join and leave flow", Label("serial"), Ordered, Serial, func() {
46+
var _ = Describe("Test member cluster join and leave flow", Label("joinleave"), Ordered, Serial, func() {
4747
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
4848
workNamespaceName := fmt.Sprintf(workNamespaceNameTemplate, GinkgoParallelProcess())
4949
internalServiceExportName := fmt.Sprintf("internal-service-export-%d", GinkgoParallelProcess())
@@ -79,7 +79,7 @@ var _ = Describe("Test member cluster join and leave flow", Label("serial"), Ord
7979
}
8080
})
8181

82-
Context("Test cluster join and leave flow with CRP not deleted", Label("serial"), Ordered, Serial, func() {
82+
Context("Test cluster join and leave flow with CRP not deleted", Label("joinleave"), Ordered, Serial, func() {
8383
It("Create the test resources in the namespace", createWrappedResourcesForEnvelopTest)
8484

8585
It("Create the CRP that select the name space and place it to all clusters", func() {
@@ -245,8 +245,8 @@ var _ = Describe("Test member cluster join and leave flow", Label("serial"), Ord
245245
})
246246
})
247247

248-
var _ = Describe("Test member cluster force delete flow", Label("serial"), Ordered, Serial, func() {
249-
Context("Test cluster join and leave flow with member agent down and force delete member cluster", Label("serial"), Ordered, Serial, func() {
248+
var _ = Describe("Test member cluster force delete flow", Label("joinleave"), Ordered, Serial, func() {
249+
Context("Test cluster join and leave flow with member agent down and force delete member cluster", Label("joinleave"), Ordered, Serial, func() {
250250
It("Simulate the member agent going down in member cluster", func() {
251251
updateMemberAgentDeploymentReplicas(memberCluster3WestProdClient, 0)
252252
})

test/e2e/placement_eviction_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ import (
3131
testutilseviction "github.com/kubefleet-dev/kubefleet/test/utils/eviction"
3232
)
3333

34-
var _ = Describe("ClusterResourcePlacement eviction of bound binding, taint cluster before eviction - No PDB specified", Label("serial"), Ordered, Serial, func() {
34+
var _ = Describe("ClusterResourcePlacement eviction of bound binding, taint cluster before eviction - No PDB specified", Ordered, Serial, func() {
3535
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
3636
crpEvictionName := fmt.Sprintf(crpEvictionNameTemplate, GinkgoParallelProcess())
3737
var taintClusterNames, noTaintClusterNames []string
@@ -230,7 +230,7 @@ var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickAll C
230230
It("should still place resources on the all available member clusters", checkIfPlacedWorkResourcesOnAllMemberClusters)
231231
})
232232

233-
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickAll CRP, PDB with MinAvailable specified as Integer to protect resources in all but one cluster, eviction allowed", Label("serial"), Ordered, Serial, func() {
233+
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickAll CRP, PDB with MinAvailable specified as Integer to protect resources in all but one cluster, eviction allowed", Ordered, Serial, func() {
234234
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
235235
crpEvictionName := fmt.Sprintf(crpEvictionNameTemplate, GinkgoParallelProcess())
236236
var taintClusterNames, noTaintClusterNames []string
@@ -405,7 +405,7 @@ var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP
405405
It("should still place resources on the all available member clusters", checkIfPlacedWorkResourcesOnAllMemberClusters)
406406
})
407407

408-
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MaxUnavailable specified as Integer to protect resources all clusters but one cluster, eviction allowed", Label("serial"), Ordered, Serial, func() {
408+
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MaxUnavailable specified as Integer to protect resources all clusters but one cluster, eviction allowed", Ordered, Serial, func() {
409409
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
410410
crpEvictionName := fmt.Sprintf(crpEvictionNameTemplate, GinkgoParallelProcess())
411411
var taintClusterNames, noTaintClusterNames []string
@@ -511,7 +511,7 @@ var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP
511511
})
512512
})
513513

514-
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MaxUnavailable specified as percentage to protect all clusters but one, eviction allowed", Label("serial"), Ordered, Serial, func() {
514+
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MaxUnavailable specified as percentage to protect all clusters but one, eviction allowed", Ordered, Serial, func() {
515515
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
516516
crpEvictionName := fmt.Sprintf(crpEvictionNameTemplate, GinkgoParallelProcess())
517517
var taintClusterNames, noTaintClusterNames []string
@@ -793,7 +793,7 @@ var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP
793793
It("should still place resources on the all available member clusters", checkIfPlacedWorkResourcesOnAllMemberClusters)
794794
})
795795

796-
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MinAvailable specified as Integer to protect resources all clusters but one cluster, eviction allowed", Label("serial"), Ordered, Serial, func() {
796+
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MinAvailable specified as Integer to protect resources all clusters but one cluster, eviction allowed", Ordered, Serial, func() {
797797
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
798798
crpEvictionName := fmt.Sprintf(crpEvictionNameTemplate, GinkgoParallelProcess())
799799
var taintClusterNames, noTaintClusterNames []string
@@ -899,7 +899,7 @@ var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP
899899
})
900900
})
901901

902-
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MinAvailable specified as percentage to protect all clusters but one, eviction allowed", Label("serial"), Ordered, Serial, func() {
902+
var _ = Describe("ClusterResourcePlacement eviction of bound binding - PickN CRP, PDB with MinAvailable specified as percentage to protect all clusters but one, eviction allowed", Ordered, Serial, func() {
903903
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
904904
crpEvictionName := fmt.Sprintf(crpEvictionNameTemplate, GinkgoParallelProcess())
905905
var taintClusterNames, noTaintClusterNames []string

test/e2e/placement_selecting_resources_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1213,7 +1213,7 @@ var _ = Describe("validating CRP revision history allowing multiple revisions wh
12131213
})
12141214

12151215
// running spec in parallel with other specs causes timeouts.
1216-
var _ = Describe("validating CRP when selected resources cross the 1MB limit", Label("serial"), Ordered, Serial, func() {
1216+
var _ = Describe("validating CRP when selected resources cross the 1MB limit", Ordered, Serial, func() {
12171217
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
12181218
BeforeAll(func() {
12191219
By("creating resources for multiple resource snapshots")

test/e2e/scheduler_watchers_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ const (
6161
// Note that most of the cases below are Serial ones, as they manipulate the list of member
6262
// clusters in the test environment directly, which may incur side effects when running in
6363
// parallel with other test cases.
64-
var _ = Describe("responding to specific member cluster changes", Label("serial"), func() {
64+
var _ = Describe("responding to specific member cluster changes", Label("joinleave"), func() {
6565
Context("cluster becomes eligible for PickAll CRPs, just joined", Serial, Ordered, func() {
6666
crpName := fmt.Sprintf(crpNameTemplate, GinkgoParallelProcess())
6767

0 commit comments

Comments
 (0)