Skip to content

Commit

Permalink
chore: Use tox environments in matrix
Browse files Browse the repository at this point in the history
  • Loading branch information
edgarrmondragon committed May 31, 2022
1 parent d0475bf commit 3132214
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 54 deletions.
61 changes: 7 additions & 54 deletions .github/workflows/test.yml
Expand Up @@ -16,10 +16,11 @@ jobs:
fail-fast: false
matrix:
include:
- { python-version: "3.7", os: "ubuntu-latest" }
- { python-version: "3.8", os: "ubuntu-latest" }
- { python-version: "3.9", os: "ubuntu-latest" }
- { python-version: "3.10", os: "ubuntu-latest" }
- { tox-env: no_external, python-version: "3.7", os: "ubuntu-latest" }
- { tox-env: no_external, python-version: "3.8", os: "ubuntu-latest" }
- { tox-env: no_external, python-version: "3.9", os: "ubuntu-latest" }
- { tox-env: no_external, python-version: "3.10", os: "ubuntu-latest" }
- { tox-env: lint, python-version: "3.8", os: "ubuntu-latest" }

steps:
- name: Check out the repository
Expand Down Expand Up @@ -51,54 +52,6 @@ jobs:
poetry env use "${{ matrix.python-version }}"
poetry install
# TODO: Run complete test suite. Requires setting up some repository secrets
- name: Run tests
- name: Run tox
run: |
poetry run pytest --doctest-modules singer_sdk
poetry run pytest tests/core
poetry run pytest tests/cookiecutters
# TODO: Avoid this repetition by leveraging Tox sessions
lint:
name: Lint on ${{ matrix.python-version }} / ${{ matrix.os }}
runs-on: ${{ matrix.os }}
continue-on-error: false
strategy:
fail-fast: false
matrix:
include:
- { python-version: "3.8", os: "ubuntu-latest" }
steps:
- name: Check out the repository
uses: actions/checkout@v3.0.2

- name: Install Poetry
env:
PIP_CONSTRAINT: .github/workflows/constraints.txt
run: |
pipx install poetry
poetry --version
- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v3.1.2
with:
python-version: ${{ matrix.python-version }}
architecture: x64
cache: 'poetry'

- name: Upgrade pip
env:
PIP_CONSTRAINT: .github/workflows/constraints.txt
run: |
pip install pip
pip --version
- name: Install Dependencies
run: |
poetry env use "${{ matrix.python-version }}"
poetry install
- name: Run tests
run: |
poetry run tox -e lint
poetry run tox -e ${{ matrix.tox-env }}
6 changes: 6 additions & 0 deletions tox.ini
Expand Up @@ -33,6 +33,12 @@ commands =
poetry run coverage html
open ./htmlcov/index.html

[testenv:no_external]
commands =
poetry run pytest --doctest-modules singer_sdk
poetry run pytest tests/core
poetry run pytest tests/cookiecutters

[testenv:lint]
commands =
poetry run black --check --diff singer_sdk/ tests/ samples/
Expand Down

0 comments on commit 3132214

Please sign in to comment.