name: Run tox on: push: paths-ignore: - README.md - .pre-commit-config.yaml - .gitignore pull_request: paths-ignore: - README.md - .pre-commit-config.yaml - .gitignore jobs: lint: name: Linters runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Set up PDM uses: pdm-project/setup-pdm@v3 - name: Install dependencies run: pdm install -d -G lint -G test - name: Test with tox run: pdm run tox -e pylint,mypy,bandit unit-tests: name: Unit tests needs: lint runs-on: ubuntu-latest strategy: matrix: python-version: ['3.9', '3.10', '3.11'] steps: - uses: actions/checkout@v3 - name: Set up PDM uses: pdm-project/setup-pdm@v3 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: pdm install -d -G test - name: Test with tox run: pdm run tox