feat: added install matrix before release#9205
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughA new GitHub Actions workflow for cross-platform installation and functionality testing of Python packages was introduced. The release workflow was refactored to separate PyPI publishing into dedicated jobs, which now execute only after successful cross-platform tests. Artifact upload/download steps and job dependency chains were updated to enforce this new control flow. Changes
Sequence Diagram(s)sequenceDiagram
participant ReleaseBase as release-base
participant ReleaseMain as release-main
participant CrossTest as test-cross-platform
participant PublishBase as publish-base-to-pypi
participant PublishMain as publish-main-to-pypi
participant DockerBase as call_docker_build_base
participant DockerMainEP as call_docker_build_main_ep
participant DockerMain as call_docker_build_main
participant DockerMainAll as call_docker_build_main_all
participant CreateRelease as create_release
ReleaseBase->>CrossTest: Upload base artifact
ReleaseMain->>CrossTest: Upload main artifact
CrossTest->>PublishBase: On success, allow publish-base-to-pypi
CrossTest->>PublishMain: On success, allow publish-main-to-pypi
PublishBase->>DockerBase: On success, allow docker build base
PublishMain->>DockerBase: On success, allow docker build base
DockerBase->>DockerMainEP: On success, allow docker build main_ep
PublishMain->>DockerMainEP: On success, allow docker build main_ep
DockerMainEP->>DockerMain: On success, allow docker build main
DockerMain->>DockerMainAll: On success, allow docker build main_all
PublishMain->>DockerMainAll: On success, allow docker build main_all
PublishMain->>CreateRelease: On success, allow GitHub release
Estimated code review effort🎯 4 (Complex) | ⏱️ ~40 minutes ✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
|



changed release process (and nightly release) to make sure the build can be installed and ran on a matrix of operating systems before pushing to PyPi.
Split existing release steps and renamed:
release_basesplit intobuild_baseandpublish_base.release_mainsplit intobuild_mainandpublish_main.The
test-cross-platformstep occurs betweenbuild_*andpublish_*Also you manually start the
test-cross-platformon an branch or a existing PyPi release.Summary by CodeRabbit