File tree Expand file tree Collapse file tree 5 files changed +12
-45
lines changed Expand file tree Collapse file tree 5 files changed +12
-45
lines changed Original file line number Diff line number Diff line change 11self-hosted-runner :
2- labels : ["windows-aarch64"]
2+ # Pending https://github.com/rhysd/actionlint/issues/533
3+ labels : ["windows-11-arm"]
34
45config-variables : null
56
Original file line number Diff line number Diff line change @@ -156,28 +156,18 @@ jobs:
156156 strategy :
157157 fail-fast : false
158158 matrix :
159- os :
160- - windows-latest
161159 arch :
162160 - x64
161+ - Win32
162+ - arm64
163163 free-threading :
164164 - false
165165 - true
166- include :
167- # Forks don't have access to Windows on Arm runners. These jobs are skipped below:
168- - os : ${{ github.repository_owner == 'python' && 'windows-aarch64' || 'windows-latest' }}
169- arch : arm64
170- free-threading : false
171- # Forks don't have access to Windows on Arm runners. These jobs are skipped below:
172- - os : ${{ github.repository_owner == 'python' && 'windows-aarch64' || 'windows-latest' }}
173- arch : arm64
174- free-threading : true
175- - os : windows-latest
176- arch : Win32
177- free-threading : false
166+ exclude :
167+ # Skip Win32 on free-threaded builds
168+ - { arch: Win32, free-threading: true }
178169 uses : ./.github/workflows/reusable-windows.yml
179170 with :
180- os : ${{ matrix.os }}
181171 arch : ${{ matrix.arch }}
182172 free-threading : ${{ matrix.free-threading }}
183173
@@ -189,18 +179,12 @@ jobs:
189179 strategy :
190180 fail-fast : false
191181 matrix :
192- os :
193- - windows-latest
194182 arch :
195183 - x86
196184 - x64
197- include :
198- # Forks don't have access to Windows on Arm runners. These jobs are skipped below:
199- - os : ${{ github.repository_owner == 'python' && 'windows-aarch64' || 'windows-latest' }}
200- arch : arm64
185+ - arm64
201186 uses : ./.github/workflows/reusable-windows-msi.yml
202187 with :
203- os : ${{ matrix.os }}
204188 arch : ${{ matrix.arch }}
205189
206190 build-macos :
Original file line number Diff line number Diff line change 7474 runner : windows-latest
7575 - target : aarch64-pc-windows-msvc/msvc
7676 architecture : ARM64
77- # Forks don't have access to Windows on Arm runners. These jobs are skipped below:
78- runner : ${{ github.repository_owner == 'python' && 'windows-aarch64' || 'windows-latest' }}
77+ runner : windows-11-arm
7978 - target : x86_64-apple-darwin/clang
8079 architecture : x86_64
8180 runner : macos-13
9796 python-version : ' 3.11'
9897
9998 - name : Windows
100- # Forks don't have access to Windows on Arm runners. Skip those:
101- if : runner.os == 'Windows' && (matrix.architecture != 'ARM64' || github.repository_owner == 'python')
99+ if : runner.os == 'Windows'
102100 run : |
103101 choco install llvm --allow-downgrade --no-progress --version ${{ matrix.llvm }}.1.0
104102 ./PCbuild/build.bat --experimental-jit ${{ matrix.debug && '-d' || '' }} -p ${{ matrix.architecture }}
Original file line number Diff line number Diff line change @@ -3,10 +3,6 @@ name: Reusable Windows MSI
33on :
44 workflow_call :
55 inputs :
6- os :
7- description : OS to run on
8- required : true
9- type : string
106 arch :
117 description : CPU architecture
128 required : true
2117jobs :
2218 build :
2319 name : installer for ${{ inputs.arch }}
24- runs-on : ${{ inputs.os }}
20+ runs-on : ${{ inputs.arch == 'arm64' && 'windows-11-arm' || 'windows-latest' }}
2521 timeout-minutes : 60
2622 env :
2723 ARCH : ${{ inputs.arch }}
3127 with :
3228 persist-credentials : false
3329 - name : Build CPython installer
34- # Forks don't have access to Windows on Arm runners. Skip those:
35- if : inputs.arch != 'arm64' || github.repository_owner == 'python'
3630 run : ./Tools/msi/build.bat --doc -"${ARCH}"
3731 shell : bash
Original file line number Diff line number Diff line change @@ -3,10 +3,6 @@ name: Reusable Windows
33on :
44 workflow_call :
55 inputs :
6- os :
7- description : OS to run on
8- required : true
9- type : string
106 arch :
117 description : CPU architecture
128 required : true
2521jobs :
2622 build :
2723 name : Build and test (${{ inputs.arch }})
28- runs-on : ${{ inputs.os }}
24+ runs-on : ${{ inputs.arch == 'arm64' && 'windows-11-arm' || 'windows-latest' }}
2925 timeout-minutes : 60
3026 env :
3127 ARCH : ${{ inputs.arch }}
@@ -37,21 +33,15 @@ jobs:
3733 if : inputs.arch != 'Win32'
3834 run : echo "::add-matcher::.github/problem-matchers/msvc.json"
3935 - name : Build CPython
40- # Forks don't have access to Windows on Arm runners. Skip those:
41- if : inputs.arch != 'arm64' || github.repository_owner == 'python'
4236 run : >-
4337 .\\PCbuild\\build.bat
4438 -e -d -v
4539 -p "${ARCH}"
4640 ${{ fromJSON(inputs.free-threading) && '--disable-gil' || '' }}
4741 shell : bash
4842 - name : Display build info
49- # Forks don't have access to Windows on Arm runners. Skip those:
50- if : inputs.arch != 'arm64' || github.repository_owner == 'python'
5143 run : .\\python.bat -m test.pythoninfo
5244 - name : Tests
53- # Forks don't have access to Windows on Arm runners. Skip those:
54- if : inputs.arch != 'arm64' || github.repository_owner == 'python'
5545 run : >-
5646 .\\PCbuild\\rt.bat
5747 -p "${ARCH}"
You can’t perform that action at this time.
0 commit comments