Skip to content

workflow: run pytests via matrix to get more parallel runs #910

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

Merged
merged 3 commits into from
Apr 30, 2025

Conversation

mvo5
Copy link
Collaborator

@mvo5 mvo5 commented Apr 29, 2025

This commit moves the test running into a matrix so that
we get more parallel testing. It will still be (much) dominated
by test_build_disk.py but at least this way a flaky test in
e.g. test_container is much faster to re-run.

With multiple VMs we can probably also parallelize the tests [1]
because we have less images per VM to test so diskspace
may be less of an issue.


test: split test_build.py into test_build_{disk,iso}

Split this big test into smaller files because we
will run the tests in parallel via a dynamic (per-file)
github matrix. This will allow faster tests and easier
re-runs if a single test is flaky only a small subset
will have to be retriggered.

[1] #787

@mvo5 mvo5 force-pushed the multiple-workflows branch 7 times, most recently from c60e836 to 819897f Compare April 29, 2025 09:31
@mvo5 mvo5 changed the title Multiple workflows workflow: run pytests via matrix to get more parallel runs Apr 29, 2025
@mvo5 mvo5 force-pushed the multiple-workflows branch 6 times, most recently from 77d6503 to ccb1720 Compare April 29, 2025 11:48
@mvo5 mvo5 marked this pull request as ready for review April 29, 2025 13:17
@mvo5 mvo5 requested a review from achilleas-k April 29, 2025 13:17
achilleas-k
achilleas-k previously approved these changes Apr 29, 2025
Copy link
Member

@achilleas-k achilleas-k left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice!

@mvo5 mvo5 dismissed achilleas-k’s stale review April 29, 2025 18:53

The merge-base changed after approval.

@mvo5 mvo5 force-pushed the multiple-workflows branch from ccb1720 to b844984 Compare April 29, 2025 18:53
@mvo5 mvo5 requested a review from achilleas-k April 29, 2025 18:53
@mvo5
Copy link
Collaborator Author

mvo5 commented Apr 29, 2025

(sorry, had to force push to rebase and fix a conflict)

@achilleas-k achilleas-k enabled auto-merge (rebase) April 29, 2025 21:01
@mvo5 mvo5 disabled auto-merge April 30, 2025 07:10
@mvo5 mvo5 enabled auto-merge (rebase) April 30, 2025 07:10
mvo5 added 3 commits April 30, 2025 09:37
Split this big test into smaller files because we
will run the tests in parallel via a dynamic (per-file)
github matrix. This will allow faster tests and easier
re-runs if a single test is flaky only a small subset
will have to be retriggered.
This commit moves the test running into a matrix so that
we get more parallel testing. It will still be (much) dominated
by `test_build_iso.py` but at least this way a flaky test in
e.g. `test_container` is much faster to re-run.

With multiple VMs we can probably also parallize the tests
because we have less images per VM to test so diskspace
may be less of an issue.
@mvo5 mvo5 merged commit 70d63cc into osbuild:main Apr 30, 2025
22 of 29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants