Split CI into multiple workflows and use more granular steps - #489
Conversation
|
Tick the box to add this pull request to the merge queue (same as
|
|
Hm... Maybe, a network error on the runner which caused it to download a corrupt file? |
I'm not sure why that suddenly started failing. I'd guess that it is an issue with the packages database of Alpine Linux for that platform. Thinking about that again, I'd probably do that entire workflow a bit differently today: Instead of using emulation to run a "native" compiler for each respective target platform, it would probably make more sense to use a cross-compiler to build without emulation for the respective target platforms. And then use I'll try to overhaul that part of the CI soonish, and then come back to this PR. Marking this PR as a draft for the time being. |
@sylvestre: what do you think? |
GitHub allows temporarily disabling workflows (e.g., in forks of the repository). It doesn't have built-in granularity to disable jobs inside the same workflow though. To do that currently, a user could, e.g., remove jobs manually and then rebase their actual changes on a branch where the jobs are still intact. Simplify that workflow by splitting the workflow files into three (one per platform).
Additionally, use more granular steps to make it easier to catch where the runs potentially fail. That also might help with GitHub truncating the output for long steps.
Additionally, use more granular steps to make it easier to catch where the runs potentially fail. That also might help with GitHub truncating the output for long steps.
|
Thanks for merging #491. Marking as ready for review again. |
|
Sounds good |
|
@mmuetzel: thanks! |
Pull request purpose
GitHub allows temporarily disabling workflows (e.g., in forks of the repository). It doesn't have built-in granularity to disable jobs inside the same workflow though.
To do that currently, a user could, e.g., remove jobs manually and then rebase their actual changes on a branch where the jobs are still intact.
Additionally, GitHub truncates the output for long steps in its web interface.
Detailed changes proposed in this pull request
Simplify disabling parts of the CI temporarily by splitting the workflow files into three (one per platform).
Additionally, use more granular steps to make it easier to catch where the runs potentially fail. This also reduces the risk of the output being truncated by GitHub's web interface.
There is no difference in coverage by the CI with these changes. The exact same configurations as before still exists after this change. They are only slightly re-organized to help with future changes.