Bump actions-ext/python/setup from 6e1b91a408ea89f49bc8aff8724f83826f7b5446 to a3f3953ef26a519ab7b6a56b94d06fa1b31ab3f3 #159
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build Status | |
| on: | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - v* | |
| paths-ignore: | |
| - LICENSE | |
| - README.md | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| checks: write | |
| pull-requests: write | |
| jobs: | |
| build: | |
| name: build (${{ matrix.name }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - name: ubuntu-latest | |
| dist_path: dist | |
| os: ubuntu-latest | |
| python: "3.11" | |
| target: native | |
| - name: ubuntu-24.04-arm | |
| dist_path: dist | |
| os: ubuntu-24.04-arm | |
| python: "3.11" | |
| target: native | |
| - name: macos-latest | |
| dist_path: dist | |
| os: macos-latest | |
| python: "3.11" | |
| target: native | |
| - name: windows-latest | |
| dist_path: dist | |
| os: windows-latest | |
| python: "3.11" | |
| target: native | |
| - name: pyodide | |
| dist_path: dist/pyodide | |
| os: ubuntu-latest | |
| python: "3.14" | |
| target: pyodide | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Setup Python | |
| uses: actions-ext/python/setup@a3f3953ef26a519ab7b6a56b94d06fa1b31ab3f3 | |
| with: | |
| version: ${{ matrix.python }} | |
| - name: Setup Rust | |
| uses: actions-ext/rust/setup@2db8e3e4c56beb7320c7d730bd2c2d6a6447bf6b | |
| - name: Install dependencies | |
| run: make develop | |
| if: matrix.target == 'native' | |
| - name: Lint | |
| run: make lint | |
| if: matrix.target == 'native' | |
| - name: Checks | |
| run: make checks | |
| if: matrix.name == 'ubuntu-latest' | |
| - name: Build | |
| run: make build | |
| if: matrix.target == 'native' | |
| - name: Test | |
| run: make coverage | |
| if: matrix.target == 'native' | |
| - name: Build and test Pyodide wheel | |
| run: make test-pyodide | |
| if: matrix.target == 'pyodide' | |
| - name: Upload test results (Python) | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: test-results-${{ matrix.name }} | |
| path: '**/junit.xml' | |
| if: always() && matrix.target == 'native' | |
| - name: Publish test results | |
| uses: EnricoMi/publish-unit-test-result-action@d0a4676d0e0b938bc201470d88276b7c74c712b3 # v2.24.0 | |
| with: | |
| files: '**/junit.xml' | |
| if: matrix.name == 'ubuntu-latest' | |
| - name: Upload coverage | |
| uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| if: matrix.target == 'native' | |
| - name: Free disk space | |
| run: | | |
| sudo rm -rf /usr/local/lib/android /usr/share/dotnet /opt/ghc /usr/local/.ghcup /usr/share/swift | |
| df -h / | |
| shell: bash | |
| if: matrix.target == 'native' && runner.os == 'Linux' | |
| - name: Build distributions (Linux x86_64) | |
| run: | | |
| rm -rf dist | |
| make dist-rs | |
| make dist-py-sdist | |
| make dist-py-wheel | |
| make dist-check | |
| shell: bash | |
| env: | |
| CIBW_ARCHS_LINUX: native | |
| if: matrix.name == 'ubuntu-latest' | |
| - name: Build distributions (Linux ARM64) | |
| run: | | |
| rm -rf dist | |
| make dist-py-wheel | |
| make dist-check | |
| shell: bash | |
| env: | |
| CIBW_ARCHS_LINUX: native | |
| if: matrix.name == 'ubuntu-24.04-arm' | |
| - name: Build distributions (macOS/Windows) | |
| run: | | |
| rm -rf dist | |
| make dist-py-wheel | |
| make dist-check | |
| shell: bash | |
| env: | |
| CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=11.0 | |
| if: matrix.target == 'native' && runner.os != 'Linux' | |
| - name: Test wheel | |
| uses: actions-ext/python/test-wheel@6e1b91a408ea89f49bc8aff8724f83826f7b5446 | |
| with: | |
| module: python_template_rust | |
| if: matrix.target == 'native' && runner.os == 'Linux' | |
| - name: Test source distribution | |
| uses: actions-ext/python/test-sdist@6e1b91a408ea89f49bc8aff8724f83826f7b5446 | |
| with: | |
| module: python_template_rust | |
| if: matrix.name == 'ubuntu-latest' | |
| - name: Upload distributions | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: dist-${{ matrix.name }} | |
| path: ${{ matrix.dist_path }} |