diff options
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/build.yml | 60 |
1 files changed, 12 insertions, 48 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e2d015c1..eb6996da 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,14 +22,21 @@ name: build jobs: # Linux + macOS + Windows Python 3 py3: - name: py3-${{ matrix.os }} + name: py3-${{ matrix.os }}-${{ startsWith(matrix.os, 'windows') && matrix.archs || 'all' }} runs-on: ${{ matrix.os }} timeout-minutes: 20 strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-12, windows-2019] - # python: ["3.6", "3.11"] + include: + - os: ubuntu-latest + archs: "x86_64 i686" + - os: macos-12 + archs: "x86_64 arm64" + - os: windows-2019 + archs: "AMD64" + - os: windows-2019 + archs: "x86" steps: - name: Cancel previous runs @@ -44,6 +51,8 @@ jobs: - name: Create wheels + run tests uses: pypa/cibuildwheel@v2.11.2 + env: + CIBW_ARCHS: "${{ matrix.archs }}" - name: Upload wheels uses: actions/upload-artifact@v3 @@ -58,51 +67,6 @@ jobs: python setup.py sdist mv dist/psutil*.tar.gz 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. - py3-windows-tests: - name: py3-windows-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"] - 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 }}" - - - 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 py2: name: py2-${{ matrix.os }} |