@@ -174,130 +174,9 @@ jobs:
174174 run : .\python.bat -m test.pythoninfo
175175 - name : Tests
176176 run : .\PCbuild\rt.bat -p x64 -q -uall -u-cpu -rwW --slowest --timeout=1200 -j0
177-
178- build_macos :
179- name : ' macOS'
180- runs-on : macos-latest
181- needs : check_source
182- if : needs.check_source.outputs.run_tests == 'true'
183- env :
184- HOMEBREW_NO_ANALYTICS : 1
185- HOMEBREW_NO_AUTO_UPDATE : 1
186- HOMEBREW_NO_INSTALL_CLEANUP : 1
187- PYTHONSTRICTEXTENSIONBUILD : 1
188- steps :
189- - uses : actions/checkout@v4
190- - name : Install Homebrew dependencies
191- run : |
192- brew install pkg-config openssl@3.0 xz gdbm tcl-tk@8
193- # Because alternate versions are not symlinked into place by default:
194- brew link tcl-tk@8
195- - name : Configure CPython
196- run : |
197- CPPFLAGS="-I$(brew --prefix gdbm)/include -I$(brew --prefix xz)/include" \
198- LDFLAGS="-L$(brew --prefix gdbm)/lib -L$(brew --prefix xz)/lib" \
199- ./configure \
200- --with-pydebug \
201- --prefix=/opt/python-dev \
202- --with-openssl="$(brew --prefix openssl@3.0)" \
203- --with-dbmliborder=gdbm:ndbm
204- # (--with-dbmliborder needed for homebrew's gdbm 1.24: see gh-89452)
205- - name : Build CPython
206- run : make -j4
207- - name : Display build info
208- run : make pythoninfo
209- - name : Tests
210- run : make buildbottest TESTOPTS="-j4 -uall,-cpu"
211-
212- build_ubuntu :
213- name : ' Ubuntu'
214- runs-on : ubuntu-24.04
215- needs : check_source
216- if : needs.check_source.outputs.run_tests == 'true'
217- env :
218- OPENSSL_VER : 3.0.11
219- PYTHONSTRICTEXTENSIONBUILD : 1
220- steps :
221- - uses : actions/checkout@v4
222- - name : Register gcc problem matcher
223- run : echo "::add-matcher::.github/problem-matchers/gcc.json"
224- - name : Install dependencies
225- run : sudo ./.github/workflows/posix-deps-apt.sh
226- - name : Configure OpenSSL env vars
227- run : |
228- echo "MULTISSL_DIR=${GITHUB_WORKSPACE}/multissl" >> "$GITHUB_ENV"
229- echo "OPENSSL_DIR=${GITHUB_WORKSPACE}/multissl/openssl/${OPENSSL_VER}" >> "$GITHUB_ENV"
230- echo "LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/multissl/openssl/${OPENSSL_VER}/lib" >> "$GITHUB_ENV"
231- - name : ' Restore OpenSSL build'
232- id : cache-openssl
233- uses : actions/cache@v4
234- with :
235- path : ./multissl/openssl/${{ env.OPENSSL_VER }}
236- key : ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
237- - name : Install OpenSSL
238- if : steps.cache-openssl.outputs.cache-hit != 'true'
239- run : python3 Tools/ssl/multissltests.py --steps=library --base-directory $MULTISSL_DIR --openssl $OPENSSL_VER --system Linux
240- - name : Add ccache to PATH
241- run : |
242- echo "PATH=/usr/lib/ccache:$PATH" >> "$GITHUB_ENV"
243- - name : Configure ccache action
244- uses : hendrikmuhs/ccache-action@v1
245- - name : Configure CPython
246- run : ./configure --with-pydebug --with-openssl=$OPENSSL_DIR
247- - name : Build CPython
248- run : make -j4
249- - name : Display build info
250- run : make pythoninfo
251- - name : Tests
252- run : xvfb-run make buildbottest TESTOPTS="-j4 -uall,-cpu"
253-
254- build_ubuntu_ssltests :
255- name : ' Ubuntu SSL tests with OpenSSL'
256- runs-on : ubuntu-24.04
257- timeout-minutes : 60
258- needs : check_source
259- if : needs.check_source.outputs.run_tests == 'true' && needs.check_source.outputs.run_ssl_tests == 'true'
260- strategy :
261- fail-fast : false
262- matrix :
263- openssl_ver : [1.1.1w, 3.0.11, 3.1.3]
264- env :
265- OPENSSL_VER : ${{ matrix.openssl_ver }}
266- MULTISSL_DIR : ${{ github.workspace }}/multissl
267- OPENSSL_DIR : ${{ github.workspace }}/multissl/openssl/${{ matrix.openssl_ver }}
268- LD_LIBRARY_PATH : ${{ github.workspace }}/multissl/openssl/${{ matrix.openssl_ver }}/lib
269- steps :
270- - uses : actions/checkout@v4
177+ - name : Upload artifacts
178+ uses : actions/upload-artifact@v4
271179 with :
272- persist-credentials : false
273- - name : Register gcc problem matcher
274- run : echo "::add-matcher::.github/problem-matchers/gcc.json"
275- - name : Install dependencies
276- run : sudo ./.github/workflows/posix-deps-apt.sh
277- - name : Configure OpenSSL env vars
278- run : |
279- echo "MULTISSL_DIR=${GITHUB_WORKSPACE}/multissl" >> "$GITHUB_ENV"
280- echo "OPENSSL_DIR=${GITHUB_WORKSPACE}/multissl/openssl/${OPENSSL_VER}" >> "$GITHUB_ENV"
281- echo "LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/multissl/openssl/${OPENSSL_VER}/lib" >> "$GITHUB_ENV"
282- - name : ' Restore OpenSSL build'
283- id : cache-openssl
284- uses : actions/cache@v4
285- with :
286- path : ./multissl/openssl/${{ env.OPENSSL_VER }}
287- key : ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
288- - name : Install OpenSSL
289- if : steps.cache-openssl.outputs.cache-hit != 'true'
290- run : python3 Tools/ssl/multissltests.py --steps=library --base-directory $MULTISSL_DIR --openssl $OPENSSL_VER --system Linux
291- - name : Add ccache to PATH
292- run : |
293- echo "PATH=/usr/lib/ccache:$PATH" >> "$GITHUB_ENV"
294- - name : Configure ccache action
295- uses : hendrikmuhs/ccache-action@v1.2
296- - name : Configure CPython
297- run : ./configure --with-pydebug --with-openssl=$OPENSSL_DIR
298- - name : Build CPython
299- run : make -j4
300- - name : Display build info
301- run : make pythoninfo
302- - name : SSL tests
303- run : ./python Lib/test/ssltests.py
180+ name : build-artifacts
181+ path : |
182+ PCbuild/amd64/
0 commit comments