Consolidate shared GHA workflow steps
Currently, three of our GHA workflows share many of the same setup steps:
-
build.yml -
lint.yml -
tests.yml
The goal tracked by this issue is to consolidate this duplicated code so that these workflows can reuse the same steps.
Here's some promising documentation based on my quick research: https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-composite-action
Note: we should not be touching publish.yml, since the above workflows run on a matrix of various Python versions, however the publish workflow cannot do this. Granted, I'm not sure if the matrix is something that can be consolidated, or we will still need to repeat anyway. So perhaps there is still potential for consolidating shared logic in publish.yml as well. This requires more research.
cc @eliotwrobson