-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PWX-36514: Integration test to validate node pdb #1600
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1600 +/- ##
==========================================
- Coverage 75.75% 75.59% -0.17%
==========================================
Files 77 77
Lines 20813 20858 +45
==========================================
Hits 15767 15767
- Misses 3922 3967 +45
Partials 1124 1124 ☔ View full report in Codecov by Sentry. |
This PR is stale because it has been in review for 3 days with no activity. |
} | ||
} | ||
|
||
func NodePDBDisablingParallelUpgrade(tc *types.TestCase) func(*testing.T) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What are we trying to test here? Are we just checking that the number is less that k8snodecount - 1? This would mean that we will wait for the entire upgrade timeout to validate that. That would be a long running test.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All the tests in the operator do not actually perform the k8s upgrade. This just checks the nodes that are selected for upgrade (ones which have PDB minAvailable 0). Since the operator can only control this and the nodes actually selected are not under its control.
// Smart and parallel upgrades is supported from px version 3.1.2 and operator version 24.2.0 | ||
if k8sVersion.GreaterThanOrEqual(minSupportedK8sVersionForPdb) && opVersion.GreaterThanOrEqual(opVer24_2_0) && pxVersion.GreaterThanOrEqual(pxVer3_1_2) { | ||
t := func() (interface{}, bool, error) { | ||
nodes, err := operatorops.Instance().ListStorageNodes(cluster.Namespace) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are these going to be PX StorageNodes (kubectl get sn) or kubernetes nodes (kubectl get nodes)?
what will be the output of this ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
What this PR does / why we need it: This PR adds integration tests to validate Node PDBs as a part of Smart and Parallel Upgrades in 24.2.0
Which issue(s) this PR fixes (optional)
Closes # PWX-36514, PWX-37561
Special notes for your reviewer: The tests covered by this PR are mentioned in this testrail link
This is the link for jenkins job of the test