Convert the manual-test
workflow to allow specifying which runner OS to use
#225
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.
As I realized in #224 (comment), the
manual-test
workflow, which is currently set up as a matrix job that runs one job for every available runner OS (and then a couple more Docker containers), is not very useful as-is. Nobody logs into a dozen tmate sessions concurrently to do anything reasonable.What is typically needed is a single runner OS, or Docker container.
So let's switch this to a workflow where the user specified via
workflow_dispatch
input what exactly they want to run.While at it, add a script to update the list of available runner images by scraping the official
runner-images
README. I considered adding a scheduled GitHub workflow to update this on a regular basis, but unfortunatelygit push
is not permitted with the regular ActionsGITHUB_TOKEN
when it updates anything inside.github/workflows/
. So this will have to be done manually.As a doozy, this PR also adds support for running
manual-test
on the shiny new public preview of the GitHub-hosted Windows/ARM64 runners (where it is a bit tricky to runaction-tmate
because the MSYS2 installation is simply not where it is expected, and evenmsys2/setup-msys2
expects it to be there and needs to becajoledconvinced to install it).