Skip to content

ci: reduce runner costs — Linux-first matrix with targeted cross-platform spot-checks#25

Open
harell wants to merge 1 commit into
masterfrom
ci/reduce-runner-costs
Open

ci: reduce runner costs — Linux-first matrix with targeted cross-platform spot-checks#25
harell wants to merge 1 commit into
masterfrom
ci/reduce-runner-costs

Conversation

@harell
Copy link
Copy Markdown

@harell harell commented Apr 15, 2026

Context — GitHub Actions cost reduction

The tonkintaylor organisation is currently spending .46 over its included Actions minutes (as of April 2026). An audit of all 37 org repositories identified this repo as a cost contributor.

What the current setup costs

The CI matrix runs 3 operating systems × 4 Python versions = 12 jobs per push plus a min-deps run — 13 jobs total per trigger.

GitHub charges hosted runner minutes at:

Runner Multiplier
ubuntu-latest
windows-latest
macos-latest 10×

With 14 workflow runs recorded since January 2026, each run with 4 macOS jobs (~3 min each) accounts for the equivalent of ~30 Linux minutes per run — ~1,700 Linux-equivalent minutes for macOS alone in this period.

What this changes

Before After
Main matrix 3 OS × 4 Python Linux × 4 Python
Cross-platform Every Python on Win + macOS Single spot-check: Win 3.13 + macOS 3.13
Min-deps ubuntu 3.10 ubuntu 3.10 (unchanged)
Jobs/trigger 13 7

Spot-check jobs skip checks (pre-commit, pyright, zizmor) which are Linux-only tools — tests are the only useful cross-platform signal.

Why this is safe

geopins-python is a published PyPI library, so some cross-platform validation is warranted. However, any OS-specific packaging or import bug will surface on the spot-check against the latest Python. Full Python version sweeps are preserved on Linux.

No functional changes

No source code, tests, or configuration is modified. This is a CI runner change only.

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.

1 participant