Consolidated preflight upgrade tests with tighter polling#11202
Open
brooke-hamilton wants to merge 2 commits intoradius-project:mainfrom
Open
Consolidated preflight upgrade tests with tighter polling#11202brooke-hamilton wants to merge 2 commits intoradius-project:mainfrom
brooke-hamilton wants to merge 2 commits intoradius-project:mainfrom
Conversation
Signed-off-by: Brooke Hamilton <45323234+brooke-hamilton@users.noreply.github.com>
Signed-off-by: Brooke Hamilton <45323234+brooke-hamilton@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Scheduled functional tests were sometimes failing due to timeouts. This PR fixes the issue by adjusting timeout values and consolidating tests. The impact of this change should be to reduce the duration of the tests, while addressing the timeout failures.
Changes
Test consolidation: Reduce 4 independent test functions (
FreshInstall,PreflightDisabled,JobConfiguration,PreflightOnly) to 2 sequential subtests under a singleTest_PreflightContainerparent, eliminating 2 full Helm install/uninstall cycles (~3-6 min each).FreshInstallandJobConfigurationinto the "Enabled" subtest sinceFreshInstallwas a strict subset (only checked job existence, not config) andJobConfigurationalready verified everything it did plus TTL settingsPreflightOnlytest which was identical toFreshInstall(same helm values, same verification call)PreflightDisabledas the "Disabled" subtest unchangedExtracted shared helpers: Extract shared logic into reusable helpers (
helmInstall,helmUpgrade,helmUninstall,waitForControlPlane,findPreflightJob,logJobDetails,cleanupAndWait,runCommand) to eliminate ~120 lines of duplication across tests.Tightened polling intervals: Reduce idle time during state transitions:
Proper cleanup waiting:
cleanupAndWaitnow polls for all pods in theradius-systemnamespace to fully terminate before returning, preventing aggregated API service conflicts when the next helm install runs before the previous resources are fully cleaned up. Falls back to a static sleep if the k8s client cannot be created.Note: These tests cannot run in parallel since they share the
radius-systemnamespace andradiushelm release.Type of change
Contributor checklist
Please verify that the PR meets the following requirements, where applicable: