name: Test and Lint Python Package on: push: branches: [ main ] pull_request: branches: [ main ] jobs: build: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] steps: - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip make install-dev - name: Run checks (linter, code style, tests) run: make check - name: Update documentation run: | make docs git add docs git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git commit -m "CI: Auto-generated documentation" -a | exit 0 if: ${{ matrix.python-version == '3.10' && github.event_name == 'push' }} - name: Push changes if: ${{ matrix.python-version == '3.10' && github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') }} uses: ad-m/github-push-action@master with: github_token: ${{ secrets.GITHUB_TOKEN }}