andrijapanicsb opened a new pull request, #14459:
URL: https://github.com/apache/cloudstack/pull/14459

   Fixes #14458. Found during QA for #14223; this is a separate fix based on 
current `main`, without the live-resize changes from that PR.
   
   ## Problem
   
   A `scaleKubernetesCluster` request that only supplies `nodeids` should 
remove those nodes, not resize the others. With mixed per-node offerings, the 
old fallback added the legacy cluster offering as a `DEFAULT` resize target. On 
QA7 that tried to downsize the running control node before removing the 
selected worker, so the request failed.
   
   ## Fix
   
   - Only populate the offering map from explicit offering parameters. No 
offering parameters means no offering change.
   - Use the applicable node-type offering, with the existing legacy fallback, 
when updating capacity after a count-only operation.
   - Keep autoscaling-only enable/disable and bounds changes on the worker path 
even when the offering map is empty.
   
   There is no new API parameter, database migration or change to the normal 
drain/remove workflow. Explicit global and per-node offering changes remain 
supported.
   
   ## Tests
   
   | Check | Result |
   | --- | --- |
   | Regression tests on the original logic | Four relevant failures: implicit 
offering-map fallback and mixed-offering scale-in accounting |
   | Full CKS module tests with Maven `-P quality` after the fix | **137 
passed**, 0 failures/errors/skipped; nine additional tests net |
   | Selected-worker and count-only scale-in | Unit tests check the selected 
removal, preserved offering-update flags and correct remaining capacity |
   | Legacy and autoscaling-only requests | Unit tests cover legacy global 
fallback, enable, disable and bounds-only changes |
   | QA7 selected-worker removal | In progress; live evidence will be added 
before marking this PR ready |
   
   QA7 runs the published #14223 packages. Live verification will use a 
recorded, locally built hotfix on that baseline, preserving its reconciliation 
changes; it will not be described as a new published package build.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to