name: gh on: pull_request: jobs: gh: name: ${{ matrix.name }} runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: include: - name: linters python-version: 3.6 # - name: docs # python-version: 3.6 # continue-on-error: true - name: packaging python-version: 3.6 - name: py36 python-version: 3.6 - name: py37 python-version: 3.7 - name: py38 python-version: 3.8 - name: py39 python-version: 3.9 - name: py310 python-version: "3.10" steps: - uses: actions/checkout@v2 with: fetch-depth: 0 # needed by setuptools-scm - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - name: >- Log the currently selected Python version info (${{ matrix.python-version }}) run: | python --version --version which python - name: Pip cache uses: actions/cache@v2 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ env.PY_SHA256 }}-${{ hashFiles('setup.cfg', 'tox.ini', 'pyproject.toml', '.pre-commit-config.yaml', 'pytest.ini') }} restore-keys: | ${{ runner.os }}-pip- ${{ runner.os }}- - name: Install tox run: | python3 -m pip install --upgrade tox - name: Log installed dists run: >- python3 -m pip freeze --all - name: "Test with tox" run: | python3 -m tox env: TOXENV: ${{ matrix.name }} - name: Archive logs uses: actions/upload-artifact@v2 with: name: logs.zip path: .tox/**/log/ check: needs: - gh runs-on: ubuntu-latest steps: - name: Report success of the test matrix run: >- print("All's good") shell: python