From bec58d290b5ed4f26aee1ccc2170dad3535da097 Mon Sep 17 00:00:00 2001 From: Sascha Grunert Date: Wed, 5 Aug 2026 14:01:12 +0200 Subject: [PATCH] OCPNODE-4521: Use programmatic skip for single-node instead of test name tag Remove [Skipped:SingleReplicaTopology] from the Describe string and use a programmatic skip via IsSingleNode() in BeforeEach instead. The tag in the test name changed the SHA-256 hash used for deterministic sharding, which moved the test from shard 2of2 to 1of2 and reset all Sippy run counts to zero. Signed-off-by: Sascha Grunert --- test/extended/node/additional_storage_e2e.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/test/extended/node/additional_storage_e2e.go b/test/extended/node/additional_storage_e2e.go index 2970e1d23d28..05b931342d2e 100644 --- a/test/extended/node/additional_storage_e2e.go +++ b/test/extended/node/additional_storage_e2e.go @@ -23,18 +23,20 @@ import ( // Additional Storage E2E Tests - trigger MCO reconciliation (MCP rollouts) // and run in the disruptive-longrunning suite. -// -// [Skipped:SingleReplicaTopology] - MCP rollouts don't work reliably on single-node -// clusters due to context deadline timeouts. The test creates a custom MCP which -// triggers node drains, but single-node cannot drain its only control plane node -// without bringing down the cluster. -var _ = g.Describe("[Skipped:Disconnected][Skipped:SingleReplicaTopology][apigroup:config.openshift.io][apigroup:machineconfiguration.openshift.io][Jira:Node/CRI-O][sig-node][Feature:AdditionalStorageSupport][OCPFeatureGate:AdditionalStorageConfig][Serial][Disruptive][Suite:openshift/disruptive-longrunning] Additional Storage E2E Tests", func() { +var _ = g.Describe("[Skipped:Disconnected][apigroup:config.openshift.io][apigroup:machineconfiguration.openshift.io][Jira:Node/CRI-O][sig-node][Feature:AdditionalStorageSupport][OCPFeatureGate:AdditionalStorageConfig][Serial][Disruptive][Suite:openshift/disruptive-longrunning] Additional Storage E2E Tests", func() { defer g.GinkgoRecover() var oc = exutil.NewCLI("additional-storage-e2e") g.BeforeEach(func(ctx context.Context) { SkipOnMicroShift(oc) + + isSingleNode, err := exutil.IsSingleNode(ctx, oc.AdminConfigClient()) + o.Expect(err).NotTo(o.HaveOccurred()) + if isSingleNode { + g.Skip("MCP rollouts don't work reliably on single-node clusters") + } + EnsureNodesReady(ctx, oc) enabled, reason := IsAdditionalStorageConfigEnabled(ctx, oc)