ci: Run target-agnostic build/test steps only once #132
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
From #129 (comment)
A lot of these steps - except apk building - are not target-specific (do not have a
--target
option;target:
onactions-rs/toolchain
only specifies what targets to install). This is a waste of time despite all duplication running in parallel, and could be used to run a target-specific apk build in parallel with host-side tests instead.It should be fine to perform just the apk build step on Windows, and leave the rest (tests, documentation) to Linux runners only - most of those steps were not ran on Windows anyway.
This takes CI time down from 6m30s to just under 5m, with around 3m spent in apk building (in parallel), 3m40s spent testing all cates and docs on the host, and under 5m for apk building on Windows (defining the baseline for total build completion time).
EDIT: With the second commit separating (hence parallelizing) host-tests from documentation build-testing, these steps are now down to 2m40 resp 2min. Not that it matters, the Windows test defines our lower bound 😡