Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/distribute-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,8 @@ permissions:
jobs:
# ── Discover + validate every Config/products/<id>.json (cheap, fail-fast) ──
# products.py validates identity + the mandatory inline changelog and fails
# loudly on a bad file — so this ubuntu job gates the expensive macOS verify.
# loudly on a bad file — so this cheap job gates the expensive verify below.
# (Ran on ubuntu until v0.4.7 moved every job to self-hosted macOS.)
discover:
runs-on: [self-hosted, macOS]
timeout-minutes: 5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/memory-watch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ concurrency:
cancel-in-progress: false

jobs:
# Cheap gate on ubuntu (like the distribute-* prepare jobs). A per-commit cache
# Cheap gate (like the distribute-* prepare jobs). A per-commit cache
# marker makes each commit on main get watched exactly once; `force` overrides.
gate:
runs-on: [self-hosted, macOS]
Expand Down
18 changes: 15 additions & 3 deletions .github/workflows/selftest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,29 @@ permissions:

jobs:
lint-and-test:
runs-on: ubuntu-latest
# Self-hosted macOS, like every other job in this repo. This was the last
# `ubuntu-latest` left, and it was also the only workflow that stopped
# dispatching — GitHub-hosted runners are a separate capacity/billing path
# from ours, so a block there takes out this job while every self-hosted
# build keeps running. Nothing here needs Linux: actionlint ships a darwin
# build and the tests are offline python3 + git.
runs-on: [self-hosted, macOS]
timeout-minutes: 10
steps:
- uses: actions/checkout@v6

- name: Install actionlint
run: bash <(curl -fsSL https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)
# Into a temp dir, not the workspace: a self-hosted runner reuses its
# checkout, so dropping the binary next to the sources would leave an
# untracked ./actionlint behind between runs.
run: |
mkdir -p "$RUNNER_TEMP/actionlint"
cd "$RUNNER_TEMP/actionlint"
bash <(curl -fsSL https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)

- name: Lint workflows
run: |
./actionlint \
"$RUNNER_TEMP/actionlint/actionlint" \
-ignore 'property "job_workflow_sha" is not defined' \
-ignore 'shellcheck reported issue' \
.github/workflows/*.yml
Expand Down
Loading