Skip to content

Commit 2575cde

Browse files
committed
ci: self-hosted macOS arm64 lane (Mac-mini-Alonso-227, c2pool-mac-arm) + sccache
Repoint the macOS arm64 matrix lane to the self-hosted M4 Mac mini (label c2pool-mac-arm) on push and internal-branch PRs, with a GitHub-hosted fork fallback to macos-14 — same fork-gate shape as the Windows lane in this branch. Add sccache compiler launcher (persists across self-hosted runs; no-op-safe on the hosted fallback). Linux (VM905) leg held separately until that runner is registered.
1 parent 94fde3e commit 2575cde

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

.github/workflows/build.yml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -546,9 +546,10 @@ jobs:
546546
# ════════════════════════════════════════════════════════════════════════════
547547

548548
# ════════════════════════════════════════════════════════════════════════════
549-
# macOS (matrix: arm64 on GitHub-hosted macos-14, x86_64 on the self-hosted
550-
# Intel runner labeled c2pool-mac-intel). The self-hosted lane resolves the
551-
# macOS x86_64 CI starvation (#42) — macpro-intel-204 standup 2026-06-16.
549+
# macOS (matrix). Both arches self-hosted on push/internal-branch PRs, with
550+
# GitHub-hosted fork fallback: arm64 -> Mac-mini-Alonso-227 (c2pool-mac-arm)
551+
# else macos-14; x86_64 -> macpro-intel-204 (c2pool-mac-intel). Resolves the
552+
# macOS x86_64 CI starvation (#42). sccache caches across self-hosted runs.
552553
# ════════════════════════════════════════════════════════════════════════════
553554
macos:
554555
name: macOS ${{ matrix.arch }}
@@ -560,7 +561,7 @@ jobs:
560561
matrix:
561562
include:
562563
- arch: arm64
563-
runner: macos-14
564+
runner: ${{ (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && fromJSON('["self-hosted","macOS","ARM64","c2pool-mac-arm"]') || 'macos-14' }}
564565
- arch: x86_64
565566
runner: [self-hosted, macOS, X64, c2pool-mac-intel]
566567
steps:
@@ -583,10 +584,10 @@ jobs:
583584
fi
584585
585586
- name: Install dependencies
586-
run: brew install cmake boost leveldb secp256k1 nlohmann-json yaml-cpp
587+
run: brew install cmake boost leveldb secp256k1 nlohmann-json yaml-cpp sccache
587588

588589
- name: Configure
589-
run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
590+
run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache
590591

591592
- name: Build
592593
run: cmake --build build --target c2pool -j$(sysctl -n hw.ncpu)

0 commit comments

Comments
 (0)