summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorMatthieu Darbois <mayeut@users.noreply.github.com>2022-10-21 01:02:23 +0200
committerGitHub <noreply@github.com>2022-10-21 01:02:23 +0200
commit614e91158ced7a65aabbe7244d52de1cebfc494b (patch)
treee69c295da7ebf41d4f6a11db6378e37916625f1a /.github
parent1b09c1b54cb2ae46145de7f710e9b990cd264016 (diff)
downloadpsutil-614e91158ced7a65aabbe7244d52de1cebfc494b.tar.gz
feature: use ABI3 for cp36+ (#2102)
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml49
1 files changed, 46 insertions, 3 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index e572b029..3a52c8fe 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -20,15 +20,15 @@
on: [push, pull_request]
name: build
jobs:
- # Linux + macOS + Python 3
- linux-macos-py3:
+ # Linux + macOS + Windows Python 3
+ py3:
name: ${{ matrix.os }}-py3
runs-on: ${{ matrix.os }}
timeout-minutes: 20
strategy:
fail-fast: false
matrix:
- os: [ubuntu-latest, macos-12]
+ os: [ubuntu-latest, macos-12, windows-2019]
steps:
- name: Cancel previous runs
@@ -60,6 +60,49 @@ jobs:
mv dist/psutil*.tar.gz wheelhouse/
python scripts/internal/print_hashes.py wheelhouse/
+ # Windows cp37+ tests
+ # psutil tests do not like running from a virtualenv with python>=3.7 so
+ # not using cibuildwheel for those. run them "manually" with this job.
+ windows-py3-test:
+ name: windows-py3-test-${{ matrix.python }}-${{ matrix.architecture }}
+ needs: py3
+ runs-on: windows-2019
+ timeout-minutes: 20
+ strategy:
+ fail-fast: false
+ matrix:
+ python: ["3.7", "3.8", "3.9", "3.10", "~3.11.0-0"]
+ architecture: ["x86", "x64"]
+
+ steps:
+ - name: Cancel previous runs
+ uses: styfle/cancel-workflow-action@0.9.1
+ with:
+ access_token: ${{ github.token }}
+ - uses: actions/checkout@v3
+ - uses: actions/setup-python@v4
+ with:
+ python-version: "${{ matrix.python }}"
+ architecture: "${{ matrix.architecture }}"
+ cache: pip
+ cache-dependency-path: .github/workflows/build.yml
+ - name: Download wheels
+ uses: actions/download-artifact@v3
+ with:
+ name: wheels
+ path: wheelhouse
+ - name: Run tests
+ run: |
+ mkdir .tests
+ cd .tests
+ pip install $(find ../wheelhouse -name '*-cp36-abi3-${{ matrix.architecture == 'x86' && 'win32' || 'win_amd64'}}.whl')[test]
+ export PYTHONWARNINGS=always
+ export PYTHONUNBUFFERED=1
+ export PSUTIL_DEBUG=1
+ python ../psutil/tests/runner.py
+ python ../psutil/tests/test_memleaks.py
+ shell: bash
+
# Linux + macOS + Python 2
linux-macos-py2:
name: ${{ matrix.os }}-py2