From 9e259675f786f604569be536921da6b6edeab961 Mon Sep 17 00:00:00 2001 From: Chris Marslender Date: Fri, 29 Aug 2025 09:53:36 -0500 Subject: [PATCH 1/4] Swap to self hosted mac intel runners for installer build --- .github/workflows/build-macos-installers.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-macos-installers.yml b/.github/workflows/build-macos-installers.yml index 9c3b726a8026..a2be814a4a3e 100644 --- a/.github/workflows/build-macos-installers.yml +++ b/.github/workflows/build-macos-installers.yml @@ -53,7 +53,7 @@ jobs: matrix: python-version: ["3.10"] os: - - runs-on: macos-13 + - runs-on: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-intel' || 'macos-13' }} name: intel bladebit-suffix: macos-x86-64.tar.gz arch-artifact-name: intel From cbf437c48e9d574028460156c9b4a4b36956eb1e Mon Sep 17 00:00:00 2001 From: Chris Marslender Date: Fri, 29 Aug 2025 10:25:47 -0500 Subject: [PATCH 2/4] Change the test to also run self-hosted --- .github/workflows/build-macos-installers.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-macos-installers.yml b/.github/workflows/build-macos-installers.yml index a2be814a4a3e..0e4a7068a398 100644 --- a/.github/workflows/build-macos-installers.yml +++ b/.github/workflows/build-macos-installers.yml @@ -296,7 +296,7 @@ jobs: - name: 13 matrix: 13 runs-on: - intel: macos-13 + intel: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-intel' || 'macos-13' }} - name: 14 matrix: 14 runs-on: From 188148eaa514ec69be29d9540e28de331c7d00c4 Mon Sep 17 00:00:00 2001 From: Chris Marslender Date: Fri, 29 Aug 2025 14:12:37 -0500 Subject: [PATCH 3/4] Use self hosted mac intel runners, and limit some things to not always run on mac intel --- .github/workflows/check_wheel_availability.yaml | 2 +- .github/workflows/pre-commit.yml | 7 ++++++- .github/workflows/test-install-scripts.yml | 2 +- .github/workflows/test.yml | 14 +++++++++++--- .github/workflows/upload-pypi-source.yml | 7 ++++++- 5 files changed, 25 insertions(+), 7 deletions(-) diff --git a/.github/workflows/check_wheel_availability.yaml b/.github/workflows/check_wheel_availability.yaml index 1bdec77e9ec6..75dc4264c5f0 100644 --- a/.github/workflows/check_wheel_availability.yaml +++ b/.github/workflows/check_wheel_availability.yaml @@ -32,7 +32,7 @@ jobs: - name: macOS matrix: macos runs-on: - intel: macos-13 + intel: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-intel' || 'macos-13' }} arm: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-arm64' || 'macos-15' }} - name: Windows matrix: windows diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml index 0d5f052e93ff..9cff6196c492 100644 --- a/.github/workflows/pre-commit.yml +++ b/.github/workflows/pre-commit.yml @@ -29,7 +29,7 @@ jobs: - name: macOS matrix: macos runs-on: - intel: macos-13 + intel: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-intel' || 'macos-13' }} arm: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-arm64' || 'macos-15' }} - name: Windows matrix: windows @@ -50,6 +50,11 @@ jobs: matrix: windows arch: matrix: arm + # Back to self hosted mac intel runners, which we have very few of + - os: + matrix: macos + arch: + matrix: intel steps: - name: Clean workspace diff --git a/.github/workflows/test-install-scripts.yml b/.github/workflows/test-install-scripts.yml index d4729b0d6509..69099dd4a3ad 100644 --- a/.github/workflows/test-install-scripts.yml +++ b/.github/workflows/test-install-scripts.yml @@ -40,7 +40,7 @@ jobs: emoji: 🍎 runs-on: arm: macos-15 - intel: macos-13 + intel: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-intel' || 'macos-13' }} matrix: macos - name: Windows emoji: 🪟 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ede87eedafbc..ca8b7a2ba466 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -47,7 +47,7 @@ on: type: boolean run-macos-intel: description: "run macOS-intel tests" - default: true + default: false required: false type: boolean run-macos-arm: @@ -103,13 +103,21 @@ jobs: && 'all' || 'main' }} >> "$GITHUB_OUTPUT" + echo mac_intel=${{ + ( github.event_name == 'schedule' || inputs.run-macos-intel ) + || ( github.repository_owner == 'Chia-Network' && github.repository == 'Chia-Network/chia-blockchain' && startsWith(github.ref, 'refs/heads/release/') ) + || ( github.repository_owner == 'Chia-Network' && github.repository == 'Chia-Network/chia-blockchain' && startsWith(github.base_ref, 'release/') ) + && 'true' + || 'false' + }} >> "$GITHUB_OUTPUT" outputs: configuration: ${{ steps.configure.outputs.configuration }} matrix_mode: ${{ steps.configure.outputs.matrix_mode }} + mac_intel: ${{ steps.configure.outputs.mac_intel }} macos-intel: - if: github.event_name != 'workflow_dispatch' || inputs.run-macos-intel + if: needs.configure.outputs.mac_intel == 'true' uses: ./.github/workflows/test-single.yml needs: configure with: @@ -120,7 +128,7 @@ jobs: concurrency-name: macos-intel configuration: ${{ needs.configure.outputs.configuration }} matrix_mode: ${{ needs.configure.outputs.matrix_mode }} - runs-on: macos-13 + runs-on: ${{ github.repository_owner == 'Chia-Network' && 'macos-13-intel' || 'macos-13' }} arch: intel arch-emoji: 🌀 macos-arm: diff --git a/.github/workflows/upload-pypi-source.yml b/.github/workflows/upload-pypi-source.yml index b299007649ed..94a563349484 100644 --- a/.github/workflows/upload-pypi-source.yml +++ b/.github/workflows/upload-pypi-source.yml @@ -44,7 +44,7 @@ jobs: matrix: macos emoji: 🍎 runs-on: - intel: macos-13 + intel: macos-13-intel arm: macos-13-arm64 - name: Windows matrix: windows @@ -74,6 +74,11 @@ jobs: matrix: windows arch: matrix: arm + # Back to self hosted mac intel runners, which we have very few of + - os: + matrix: macos + arch: + matrix: intel steps: - uses: chia-network/actions/clean-workspace@main From 6cce25cad2134156ae11dd8185a11302efa970d8 Mon Sep 17 00:00:00 2001 From: Chris Marslender Date: Fri, 29 Aug 2025 14:16:24 -0500 Subject: [PATCH 4/4] Split the new mac intel rule to its own step --- .github/workflows/test.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ca8b7a2ba466..7c860bed1041 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -103,6 +103,10 @@ jobs: && 'all' || 'main' }} >> "$GITHUB_OUTPUT" + + - name: Generate mac intel configuration + id: macintel + run: | echo mac_intel=${{ ( github.event_name == 'schedule' || inputs.run-macos-intel ) || ( github.repository_owner == 'Chia-Network' && github.repository == 'Chia-Network/chia-blockchain' && startsWith(github.ref, 'refs/heads/release/') ) @@ -114,7 +118,7 @@ jobs: outputs: configuration: ${{ steps.configure.outputs.configuration }} matrix_mode: ${{ steps.configure.outputs.matrix_mode }} - mac_intel: ${{ steps.configure.outputs.mac_intel }} + mac_intel: ${{ steps.macintel.outputs.mac_intel }} macos-intel: if: needs.configure.outputs.mac_intel == 'true'