You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
CI: Refactor test pipelines to cover bare VM and container environments #1369
The current test blocker is #1307. We recently added xfail to tests we did not think runnable in the CI. But those tests did run in the bare VM setup, and turned xfail to xpass (hence failing, because we set the strict mode). This can be easily fixed.
In the internal discussion we concluded that we don't need to test against a set of containers. But it is nice to test both container and containerless (i.e. bare VM) environments. We currently have two test workflows:
test-wheel-linux.yml: Needed because Linux runners required a container (no longer needed)
test-wheel-windows.yml: Needed because Windows runners do not require any container
I suggest we rename and re-purposes the two workflows as follows:
test-wheel-container.yml: This runs all existing Linux tests
test-wheel-containerless.yml: This runs all existing Linux + Windows tests
Piggybacking on this refactoring we can probably get rid of the Powershell usage in the workflow, since our CI relies heavily on Bash and Git Bash.
I suggest we rename and re-purposes the two workflows as follows:
test-wheel-container.yml: This runs all existing Linux tests
test-wheel-containerless.yml: This runs all existing Linux + Windows tests
Piggybacking on this refactoring we can probably get rid of the Powershell usage in the workflow, since our CI relies heavily on Bash and Git Bash.
Thanks to @fangg2026 for the suggestion and experiment. It turns out that we do not need this distinction and can unify all test workflows into one file! The trick is to parametrize the values for container:, and for the container-less jobs (i.e. running on the bare VM) we pass an empty string as the value (enabled since 2020). This should allow most of the Linux/Windows test jobs to run on the bare VM and we pick only a few jobs to run in a container.
Activity
leofang commentedon Jul 16, 2026
Thanks to @fangg2026 for the suggestion and experiment. It turns out that we do not need this distinction and can unify all test workflows into one file! The trick is to parametrize the values for
container:, and for the container-less jobs (i.e. running on the bare VM) we pass an empty string as the value (enabled since 2020). This should allow most of the Linux/Windows test jobs to run on the bare VM and we pick only a few jobs to run in a container.