Skip to content

Conversation

@susesgartner
Copy link
Contributor

@susesgartner susesgartner commented Jan 6, 2026

Modularize verify logic

Previously we added a check to the VerifyClusterPods that verifies certain required deployments spin up (SUC, fleet, rancher-webhook, cluster-agent).

Changes:

  • Updated pod/deployment logic to be modular.
  • Update deployment logic to have clear error messages instead of "context deadline exxceeded"
  • Updated tests to match the new structure.

@susesgartner susesgartner requested review from a team as code owners January 6, 2026 16:38
@susesgartner susesgartner changed the title Update verify.go Update validation logic Jan 6, 2026
markusewalker
markusewalker previously approved these changes Jan 6, 2026
Josh-Diamond
Josh-Diamond previously approved these changes Jan 6, 2026
navsalehi
navsalehi previously approved these changes Jan 6, 2026
Copy link
Member

@rancher-max rancher-max left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall I like this change. My only concern is for regressions of any functions that were previously using VerifyClusterPods and expecting that everything from the previous implementation is there now have a changed functionality. There may be a few places missed that were doing this -- actions/provisioning/permutations/permutations.go and actions/workloads/verify.go are two examples in my brief search that don't have the new VerifyClusterDeployments added but are still using VerifyClusterPods.

@susesgartner susesgartner force-pushed the update-cluster-validations branch 2 times, most recently from 1597b4e to 1be12a4 Compare January 6, 2026 19:40
@github-actions
Copy link

github-actions bot commented Jan 6, 2026

ExtKubeconfigTestSuite SetupSuite
ExtKubeconfigTestSuite SetupSuite
ExtKubeconfigTestSuite SetupSuite
CertRotationDualstackTestSuite TestCertRotationDualstack
CertRotationIPv6TestSuite TestCertRotationIPv6
CertRotationExistingClusterTestSuite TestCertRotationExistingCluster
CertRotationTestSuite TestCertRotation
CertRotationWindowsTestSuite TestCertRotationWindows
BackupTestSuite TestS3InPlaceRestore
DeleteInitMachineDualstackTestSuite TestDeleteInitMachineDualstack
DeleteInitMachineIPv6TestSuite TestDeleteInitMachineIPv6
DeleteInitMachineTestSuite TestDeleteInitMachine
AirGapRKE2CustomClusterTestSuite TestCustomClusterWithGitRepo
FleetWithProvisioningTestSuite TestHardenedAfterAddedGitRepo
FleetWithProvisioningTestSuite TestWindowsAfterAddedGitRepo
NodeScalingDualstackTestSuite TestScalingDualstackNodePools
NodeScalingIPv6TestSuite TestScalingIPv6NodePools
AutoReplaceExistingClusterSuite TestAutoReplaceExistingCluster
AutoReplaceSuite TestAutoReplace
NodeReplacingTestSuite TestReplacingNodes
CustomClusterNodeScalingTestSuite TestScalingCustomClusterNodes
NodeScalingTestSuite TestScalingNodePools
RestrictedAdminReplacementTestSuite TestRestrictedAdminReplacementCre
GlobalRolesV2TestSuite TestClusterCreationAfterAddingGlobalRoleWithIn
GlobalRolesV2TestSuite TestClusterCreationAfterAddingGlobalRoleWithIn
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromClu

TestSuites above were modified. TestSuites below use modified code from this PR.

TestAutoScalingDown
RegistryTestSuite TestRegistriesK3S
RegistryTestSuite TestRegistriesRKE2
GlobalRolesV2TestSuite TestClusterCreationAfterAddingGlobalRoleWithInheritedClusterRoles
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromClusterDeletion
RestrictedAdminReplacementTestSuite TestRestrictedAdminReplacementCreateCluster
RKE1NodeDriverProvisioningTestSuite TestProvisioningRKE1Cluster
RKE1NodeDriverProvisioningTestSuite TestProvisioningRKE1ClusterDynamicInput
KdmChecksTestSuite TestProvisioningSingleNodeRKE1Clusters
CustomClusterProvisioningTestSuite TestProvisioningRKE1CustomCluster
CustomClusterProvisioningTestSuite TestProvisioningRKE1CustomClusterDynamicInput
RKE1PSACTTestSuite TestRKE1PSACTNodeDriverCluster
RKE1CloudProviderTestSuite TestAWSCloudProviderRKE1Cluster
RKE1CloudProviderTestSuite TestVsphereCloudProviderRKE1Cluster
ProxyRKE1ProvisioningTestSuite TestProxyRKE1ClusterProvisioning
ProxyRKE2ProvisioningTestSuite TestProxyRKE2ClusterProvisioning
ProxyRKE1CustomClusterTestSuite TestProxyRKE1CustomCluster
ProxyK3SCustomClusterTestSuite TestProxyK3SCustomClusterProvisioning
ProxyRKE2CustomClusterTestSuite TestProxyRKE2CustomClusterProvisioning
ProxyK3SProvisioningTestSuite TestProxyK3SClusterProvisioning
UpgradeRKE1KubernetesTestSuite TestUpgradeRKE1Kubernetes
UpgradeIPv6KubernetesTestSuite TestUpgradeIPv6Kubernetes
UpgradeDualstackKubernetesTestSuite TestUpgradeDualstackKubernetes
UpgradeWindowsKubernetesTestSuite TestUpgradeWindowsKubernetes
UpgradeKubernetesTestSuite TestUpgradeKubernetes
UpgradeKubernetesExistingClusterTestSuite TestUpgradeKubernetesExistingCluster
HostedRancherTestSuite TestGlobalRoleInheritedClusterRoles
GlobalRolesV2TestSuite TestCreateUserWithInheritedCustomClusterRole
GlobalRolesV2TestSuite TestUpdateExistingUserWithCustomGlobalRoleInheritingClusterRoles
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromDeletingGlobalRoleBinding
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromDeletingInheritedClusterRoles
GlobalRolesV2WebhookTestSuite SetupSuite
NodeScalingIPv6TestSuite SetupSuite
NodeScalingDualstackTestSuite SetupSuite
CustomClusterNodeScalingTestSuite SetupSuite
AutoReplaceSuite SetupSuite
NodeReplacingTestSuite SetupSuite
CertRotationIPv6TestSuite SetupSuite
CertRotationDualstackTestSuite SetupSuite
CertRotationWindowsTestSuite SetupSuite
CertRotationTestSuite SetupSuite
SnapshotIPv6RestoreTestSuite SetupSuite
SnapshotDualstackRestoreTestSuite SetupSuite
S3SnapshotRestoreTestSuite SetupSuite
SnapshotRetentionTestSuite SetupSuite
SnapshotRestoreWindowsTestSuite SetupSuite
SnapshotRecurringTestSuite SetupSuite
UpgradeIPv6KubernetesTestSuite SetupSuite
UpgradeDualstackKubernetesTestSuite SetupSuite
MigrateCloudProviderSuite SetupSuite
UpgradeWindowsKubernetesTestSuite SetupSuite
UpgradeKubernetesTestSuite SetupSuite
DeleteIPv6ClusterTestSuite SetupSuite
DeleteInitMachineIPv6TestSuite SetupSuite
DeleteDualstackClusterTestSuite SetupSuite
DeleteInitMachineDualstackTestSuite SetupSuite
DeleteClusterTestSuite SetupSuite
DeleteInitMachineTestSuite SetupSuite
UpgradeWorkloadTestSuite SetupSuite

Josh-Diamond
Josh-Diamond previously approved these changes Jan 6, 2026
@susesgartner
Copy link
Contributor Author

susesgartner commented Jan 6, 2026

@rancher-max The old cluster permutations is no longer used as far as I know. The changes I made simply divide the 2 checks so you can explicitly choose what you want to check. I could add a deployment check to the verifyWorkloads if you prefer that. I also did a quick search and other then a few deprecated tests it should be added to all relevant places.

It also might be worth mentioning that all the code that got moved to the VerifyClustersDeployments func was added by me fairly recently.

@rancher-max
Copy link
Member

Sounds good! Don't let my review block, was just calling out what I saw quickly 👍

Copy link
Collaborator

@slickwarren slickwarren left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some small nits, overall lgtm.

Modularize verify logic

Previously we added a check to the VerifyClusterPods that verifies certain required deployments spin up (SUC, fleet, rancher-webhook, cluster-agent)

Update template tests

template test fix

linter fix

Update verify.go

Update verify.go
@susesgartner susesgartner force-pushed the update-cluster-validations branch from 7ebaf1a to 5c301ec Compare January 7, 2026 16:56
@github-actions
Copy link

github-actions bot commented Jan 7, 2026

ExtKubeconfigTestSuite SetupSuite
ExtKubeconfigTestSuite SetupSuite
ExtKubeconfigTestSuite SetupSuite
CertRotationDualstackTestSuite TestCertRotationDualstack
CertRotationIPv6TestSuite TestCertRotationIPv6
CertRotationExistingClusterTestSuite TestCertRotationExistingCluster
CertRotationTestSuite TestCertRotation
CertRotationWindowsTestSuite TestCertRotationWindows
BackupTestSuite TestS3InPlaceRestore
DeleteInitMachineDualstackTestSuite TestDeleteInitMachineDualstack
DeleteInitMachineIPv6TestSuite TestDeleteInitMachineIPv6
DeleteInitMachineTestSuite TestDeleteInitMachine
AirGapRKE2CustomClusterTestSuite TestCustomClusterWithGitRepo
FleetWithProvisioningTestSuite TestHardenedAfterAddedGitRepo
FleetWithProvisioningTestSuite TestWindowsAfterAddedGitRepo
NodeScalingDualstackTestSuite TestScalingDualstackNodePools
NodeScalingIPv6TestSuite TestScalingIPv6NodePools
AutoReplaceExistingClusterSuite TestAutoReplaceExistingCluster
AutoReplaceSuite TestAutoReplace
NodeReplacingTestSuite TestReplacingNodes
CustomClusterNodeScalingTestSuite TestScalingCustomClusterNodes
NodeScalingTestSuite TestScalingNodePools
RestrictedAdminReplacementTestSuite TestRestrictedAdminReplacementCre
GlobalRolesV2TestSuite TestClusterCreationAfterAddingGlobalRoleWithIn
GlobalRolesV2TestSuite TestClusterCreationAfterAddingGlobalRoleWithIn
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromClu

TestSuites above were modified. TestSuites below use modified code from this PR.

TestAutoScalingDown
RegistryTestSuite TestRegistriesK3S
RegistryTestSuite TestRegistriesRKE2
GlobalRolesV2TestSuite TestClusterCreationAfterAddingGlobalRoleWithInheritedClusterRoles
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromClusterDeletion
RestrictedAdminReplacementTestSuite TestRestrictedAdminReplacementCreateCluster
RKE1NodeDriverProvisioningTestSuite TestProvisioningRKE1Cluster
RKE1NodeDriverProvisioningTestSuite TestProvisioningRKE1ClusterDynamicInput
KdmChecksTestSuite TestProvisioningSingleNodeRKE1Clusters
CustomClusterProvisioningTestSuite TestProvisioningRKE1CustomCluster
CustomClusterProvisioningTestSuite TestProvisioningRKE1CustomClusterDynamicInput
RKE1PSACTTestSuite TestRKE1PSACTNodeDriverCluster
RKE1CloudProviderTestSuite TestAWSCloudProviderRKE1Cluster
RKE1CloudProviderTestSuite TestVsphereCloudProviderRKE1Cluster
ProxyRKE1ProvisioningTestSuite TestProxyRKE1ClusterProvisioning
ProxyRKE2ProvisioningTestSuite TestProxyRKE2ClusterProvisioning
ProxyRKE1CustomClusterTestSuite TestProxyRKE1CustomCluster
ProxyK3SCustomClusterTestSuite TestProxyK3SCustomClusterProvisioning
ProxyRKE2CustomClusterTestSuite TestProxyRKE2CustomClusterProvisioning
ProxyK3SProvisioningTestSuite TestProxyK3SClusterProvisioning
UpgradeRKE1KubernetesTestSuite TestUpgradeRKE1Kubernetes
UpgradeIPv6KubernetesTestSuite TestUpgradeIPv6Kubernetes
UpgradeDualstackKubernetesTestSuite TestUpgradeDualstackKubernetes
UpgradeWindowsKubernetesTestSuite TestUpgradeWindowsKubernetes
UpgradeKubernetesTestSuite TestUpgradeKubernetes
UpgradeKubernetesExistingClusterTestSuite TestUpgradeKubernetesExistingCluster
HostedRancherTestSuite TestGlobalRoleInheritedClusterRoles
GlobalRolesV2TestSuite TestCreateUserWithInheritedCustomClusterRole
GlobalRolesV2TestSuite TestUpdateExistingUserWithCustomGlobalRoleInheritingClusterRoles
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromDeletingGlobalRoleBinding
GlobalRolesV2TestSuite TestUserWithInheritedClusterRolesImpactFromDeletingInheritedClusterRoles
GlobalRolesV2WebhookTestSuite SetupSuite
NodeScalingIPv6TestSuite SetupSuite
NodeScalingDualstackTestSuite SetupSuite
CustomClusterNodeScalingTestSuite SetupSuite
AutoReplaceSuite SetupSuite
NodeReplacingTestSuite SetupSuite
CertRotationIPv6TestSuite SetupSuite
CertRotationDualstackTestSuite SetupSuite
CertRotationWindowsTestSuite SetupSuite
CertRotationTestSuite SetupSuite
SnapshotIPv6RestoreTestSuite SetupSuite
SnapshotDualstackRestoreTestSuite SetupSuite
S3SnapshotRestoreTestSuite SetupSuite
SnapshotRetentionTestSuite SetupSuite
SnapshotRestoreWindowsTestSuite SetupSuite
SnapshotRecurringTestSuite SetupSuite
UpgradeIPv6KubernetesTestSuite SetupSuite
UpgradeDualstackKubernetesTestSuite SetupSuite
MigrateCloudProviderSuite SetupSuite
UpgradeWindowsKubernetesTestSuite SetupSuite
UpgradeKubernetesTestSuite SetupSuite
DeleteIPv6ClusterTestSuite SetupSuite
DeleteInitMachineIPv6TestSuite SetupSuite
DeleteDualstackClusterTestSuite SetupSuite
DeleteInitMachineDualstackTestSuite SetupSuite
DeleteClusterTestSuite SetupSuite
DeleteInitMachineTestSuite SetupSuite
UpgradeWorkloadTestSuite SetupSuite

@susesgartner susesgartner merged commit 9c7a5df into rancher:main Jan 7, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants