From 14777968a2e64137991c1f822a11503e6c667f1f Mon Sep 17 00:00:00 2001 From: xueqzhan Date: Mon, 4 May 2026 21:42:30 -0400 Subject: [PATCH 1/4] Use 41 to reorder tests --- pkg/test/ginkgo/cmd_runsuite.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/test/ginkgo/cmd_runsuite.go b/pkg/test/ginkgo/cmd_runsuite.go index 7d011e9c725e..29271b96c09c 100644 --- a/pkg/test/ginkgo/cmd_runsuite.go +++ b/pkg/test/ginkgo/cmd_runsuite.go @@ -400,7 +400,7 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc // we may want to create a set of known seeds // and randomly select from that group eventually // to compare results - seed := int64(42) + seed := int64(41) // Previous seeding // this ensures the tests are always run in random order to avoid From a08730c09f93ed9645c5b09b1e8981db41937469 Mon Sep 17 00:00:00 2001 From: xueqzhan Date: Tue, 5 May 2026 08:30:54 -0400 Subject: [PATCH 2/4] Split deployment test to reproduce the issue --- pkg/test/ginkgo/cmd_runsuite.go | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/pkg/test/ginkgo/cmd_runsuite.go b/pkg/test/ginkgo/cmd_runsuite.go index 29271b96c09c..4fce1ea90686 100644 --- a/pkg/test/ginkgo/cmd_runsuite.go +++ b/pkg/test/ginkgo/cmd_runsuite.go @@ -400,7 +400,7 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc // we may want to create a set of known seeds // and randomly select from that group eventually // to compare results - seed := int64(41) + seed := int64(42) // Previous seeding // this ensures the tests are always run in random order to avoid @@ -583,6 +583,10 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc return strings.Contains(t.name, "OrderedNamespaceDeletion") }) + deploymentLifecycleTests, kubeTests := splitTests(kubeTests, func(t *testCase) bool { + return strings.Contains(t.name, "[sig-apps] Deployment should run the lifecycle of a Deployment") + }) + networkTests, openshiftTests := splitTests(openshiftTests, func(t *testCase) bool { return strings.Contains(t.name, "[sig-network]") }) @@ -601,6 +605,7 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc }) logrus.Infof("Found %d openshift tests", len(openshiftTests)) + logrus.Infof("Found %d deployment lifecycle tests", len(deploymentLifecycleTests)) logrus.Infof("Found %d kubernetes tests", len(kubeTests)) logrus.Infof("Found %d storage tests", len(storageTests)) logrus.Infof("Found %d network k8s tests", len(networkK8sTests)) @@ -618,6 +623,7 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc originalStorage := storageTests originalNetworkK8s := networkK8sTests originalOrderedNamespaceDeletionTests := orderedNamespaceDeletionTests + originalDeploymentLifecycle := deploymentLifecycleTests originalNetwork := networkTests originalNetpol := netpolTests originalBuilds := buildsTests @@ -629,13 +635,14 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc storageTests = append(storageTests, copyTests(originalStorage)...) networkK8sTests = append(networkK8sTests, copyTests(originalNetworkK8s)...) orderedNamespaceDeletionTests = append(orderedNamespaceDeletionTests, copyTests(originalOrderedNamespaceDeletionTests)...) + deploymentLifecycleTests = append(deploymentLifecycleTests, copyTests(originalDeploymentLifecycle)...) networkTests = append(networkTests, copyTests(originalNetwork)...) netpolTests = append(netpolTests, copyTests(originalNetpol)...) buildsTests = append(buildsTests, copyTests(originalBuilds)...) mustGatherTests = append(mustGatherTests, copyTests(originalMustGather)...) } } - expectedTestCount += len(openshiftTests) + len(kubeTests) + len(storageTests) + len(networkK8sTests) + len(orderedNamespaceDeletionTests) + len(networkTests) + len(netpolTests) + len(buildsTests) + len(mustGatherTests) + expectedTestCount += len(openshiftTests) + len(kubeTests) + len(storageTests) + len(networkK8sTests) + len(orderedNamespaceDeletionTests) + len(deploymentLifecycleTests) + len(networkTests) + len(netpolTests) + len(buildsTests) + len(mustGatherTests) abortFn := neverAbort testCtx := ctx @@ -660,6 +667,13 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc // we loop indefinitely. for i := 0; (i < 1 || count == -1) && testCtx.Err() == nil; i++ { + deploymentLifecycleTestsCopy := copyTests(deploymentLifecycleTests) + deploymentLifecycleIntervalID, deploymentLifecycleStartTime := recordTestBucketInterval(monitorEventRecorder, "DeploymentLifecycle") + q.Execute(testCtx, deploymentLifecycleTestsCopy, parallelism, testOutputConfig, abortFn) + monitorEventRecorder.EndInterval(deploymentLifecycleIntervalID, time.Now()) + logrus.Infof("Completed DeploymentLifecycle test bucket in %v", time.Since(deploymentLifecycleStartTime)) + tests = append(tests, deploymentLifecycleTestsCopy...) + kubeTestsCopy := copyTests(kubeTests) kubeIntervalID, kubeStartTime := recordTestBucketInterval(monitorEventRecorder, "Kubernetes") q.Execute(testCtx, kubeTestsCopy, parallelism, testOutputConfig, abortFn) From 8e3cb3361f3713b48fb60cc1e5f79037daa9c89d Mon Sep 17 00:00:00 2001 From: xueqzhan Date: Tue, 5 May 2026 14:04:18 -0400 Subject: [PATCH 3/4] Revert "Split deployment test to reproduce the issue" This reverts commit a08730c09f93ed9645c5b09b1e8981db41937469. --- pkg/test/ginkgo/cmd_runsuite.go | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/pkg/test/ginkgo/cmd_runsuite.go b/pkg/test/ginkgo/cmd_runsuite.go index 4fce1ea90686..29271b96c09c 100644 --- a/pkg/test/ginkgo/cmd_runsuite.go +++ b/pkg/test/ginkgo/cmd_runsuite.go @@ -400,7 +400,7 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc // we may want to create a set of known seeds // and randomly select from that group eventually // to compare results - seed := int64(42) + seed := int64(41) // Previous seeding // this ensures the tests are always run in random order to avoid @@ -583,10 +583,6 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc return strings.Contains(t.name, "OrderedNamespaceDeletion") }) - deploymentLifecycleTests, kubeTests := splitTests(kubeTests, func(t *testCase) bool { - return strings.Contains(t.name, "[sig-apps] Deployment should run the lifecycle of a Deployment") - }) - networkTests, openshiftTests := splitTests(openshiftTests, func(t *testCase) bool { return strings.Contains(t.name, "[sig-network]") }) @@ -605,7 +601,6 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc }) logrus.Infof("Found %d openshift tests", len(openshiftTests)) - logrus.Infof("Found %d deployment lifecycle tests", len(deploymentLifecycleTests)) logrus.Infof("Found %d kubernetes tests", len(kubeTests)) logrus.Infof("Found %d storage tests", len(storageTests)) logrus.Infof("Found %d network k8s tests", len(networkK8sTests)) @@ -623,7 +618,6 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc originalStorage := storageTests originalNetworkK8s := networkK8sTests originalOrderedNamespaceDeletionTests := orderedNamespaceDeletionTests - originalDeploymentLifecycle := deploymentLifecycleTests originalNetwork := networkTests originalNetpol := netpolTests originalBuilds := buildsTests @@ -635,14 +629,13 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc storageTests = append(storageTests, copyTests(originalStorage)...) networkK8sTests = append(networkK8sTests, copyTests(originalNetworkK8s)...) orderedNamespaceDeletionTests = append(orderedNamespaceDeletionTests, copyTests(originalOrderedNamespaceDeletionTests)...) - deploymentLifecycleTests = append(deploymentLifecycleTests, copyTests(originalDeploymentLifecycle)...) networkTests = append(networkTests, copyTests(originalNetwork)...) netpolTests = append(netpolTests, copyTests(originalNetpol)...) buildsTests = append(buildsTests, copyTests(originalBuilds)...) mustGatherTests = append(mustGatherTests, copyTests(originalMustGather)...) } } - expectedTestCount += len(openshiftTests) + len(kubeTests) + len(storageTests) + len(networkK8sTests) + len(orderedNamespaceDeletionTests) + len(deploymentLifecycleTests) + len(networkTests) + len(netpolTests) + len(buildsTests) + len(mustGatherTests) + expectedTestCount += len(openshiftTests) + len(kubeTests) + len(storageTests) + len(networkK8sTests) + len(orderedNamespaceDeletionTests) + len(networkTests) + len(netpolTests) + len(buildsTests) + len(mustGatherTests) abortFn := neverAbort testCtx := ctx @@ -667,13 +660,6 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc // we loop indefinitely. for i := 0; (i < 1 || count == -1) && testCtx.Err() == nil; i++ { - deploymentLifecycleTestsCopy := copyTests(deploymentLifecycleTests) - deploymentLifecycleIntervalID, deploymentLifecycleStartTime := recordTestBucketInterval(monitorEventRecorder, "DeploymentLifecycle") - q.Execute(testCtx, deploymentLifecycleTestsCopy, parallelism, testOutputConfig, abortFn) - monitorEventRecorder.EndInterval(deploymentLifecycleIntervalID, time.Now()) - logrus.Infof("Completed DeploymentLifecycle test bucket in %v", time.Since(deploymentLifecycleStartTime)) - tests = append(tests, deploymentLifecycleTestsCopy...) - kubeTestsCopy := copyTests(kubeTests) kubeIntervalID, kubeStartTime := recordTestBucketInterval(monitorEventRecorder, "Kubernetes") q.Execute(testCtx, kubeTestsCopy, parallelism, testOutputConfig, abortFn) From 8202ba6f37413040f104b6b2c6636fd90638b955 Mon Sep 17 00:00:00 2001 From: xueqzhan Date: Tue, 5 May 2026 14:04:18 -0400 Subject: [PATCH 4/4] Revert "Use 41 to reorder tests" This reverts commit 14777968a2e64137991c1f822a11503e6c667f1f. --- pkg/test/ginkgo/cmd_runsuite.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/test/ginkgo/cmd_runsuite.go b/pkg/test/ginkgo/cmd_runsuite.go index 29271b96c09c..7d011e9c725e 100644 --- a/pkg/test/ginkgo/cmd_runsuite.go +++ b/pkg/test/ginkgo/cmd_runsuite.go @@ -400,7 +400,7 @@ func (o *GinkgoRunSuiteOptions) Run(suite *TestSuite, clusterConfig *clusterdisc // we may want to create a set of known seeds // and randomly select from that group eventually // to compare results - seed := int64(41) + seed := int64(42) // Previous seeding // this ensures the tests are always run in random order to avoid