| name: Code Quality Checks |
| on: |
| push: |
| branches: |
| - main |
| - release/** |
| pull_request: |
| branches: |
| - main |
| - release/** |
| workflow_call: |
| workflow_dispatch: |
| |
| concurrency: |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} |
| cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} |
| defaults: |
| run: |
| working-directory: . |
| jobs: |
| code-quality: |
| runs-on: ubuntu-20.04 |
| timeout-minutes: 10 |
| strategy: |
| matrix: |
| python_version: |
| - '3.8' |
| - '3.9' |
| - '3.10' |
| pip_deps: |
| - '[dev]' |
| steps: |
| - uses: actions/checkout@v3 |
| - uses: actions/setup-python@v4 |
| with: |
| python-version: ${{ matrix.python_version }} |
| - name: Setup |
| run: | |
| set -ex |
| python -m pip install --upgrade 'pip<23' wheel |
| python -m pip install --upgrade .${{ matrix.pip_deps }} |
| - name: Run checks |
| run: | |
| pre-commit run --all-files |
| |