andrijapanicsb opened a new pull request, #13840: URL: https://github.com/apache/cloudstack/pull/13840
### Description This is a packaging follow-up to #13482. #13482 changed Marvin's runtime contract to `mysql-connector-python >= 8.4.0` after 8.0.31 caused smoke-test failures. The RPM specs were not updated with that change: - the Marvin `%post` script still explicitly installs 8.0.31 before installing Marvin; - the management package still installs 8.3.0 on its modern-Python path; and - that path is selected for Python 3.7 even though the modern connector requires Python 3.8 or newer. The mismatch does not require management and Marvin to be installed on the same machine. Each RPM should independently install a connector compatible with the software it contains. This PR updates both EL and SUSE RPM specs to: - install the exact 8.4.0 wheel for management on Python 3.8 or newer; - retain 8.0.31 for the legacy Python path; - correct the modern-Python guard from 3.7 to 3.8; and - preinstall exact 8.4.0 in the Marvin `%post` script, matching Marvin's declared lower bound. The same stale blocks are present in the current 4.23 RC branches and `main`. This PR targets `4.22` so the fix can follow the normal merge-forward path. ### Types of changes - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [ ] New feature (non-breaking change which adds functionality) - [x] Bug fix (non-breaking change which fixes an issue) - [ ] Enhancement (improves an existing feature and functionality) - [ ] Cleanup (Code refactoring and cleanup, that may add test cases) - [ ] Build/CI - [ ] Test (unit or integration test code) ### Feature/Enhancement Scale or Bug Severity #### Feature/Enhancement Scale - [ ] Major - [ ] Minor #### Bug Severity - [ ] BLOCKER - [ ] Critical - [ ] Major - [x] Minor - [ ] Trivial ### How Has This Been Tested? - Parsed both changed specs with native `rpmspec -P` on Oracle Linux 8.10. - Verified the official 8.4.0 universal wheel SHA-256 (`35939c4ff28f395a5550bae67bafa4d1658ea72ea3206f457fff64a0fbec17e4`). - Installed and imported 8.0.31 on Python 3.6, then ran `pip check` successfully. - Installed and imported 8.4.0 on Python 3.12, verified its `Requires-Python: >=3.8` metadata, then ran `pip check` successfully. - Started from 9.4.0 in isolated environments and verified that both the management and Marvin installation forms replace it with exact 8.4.0, with successful imports and `pip check` afterward. - Verified that the EL and SUSE connector blocks remain identical and that Marvin's declared requirement is still `>= 8.4.0`. An upstream multi-distribution package build will also be requested on this PR. -- 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]
