exotic-oses #11
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: exotic-oses | |
on: | |
workflow_run: | |
workflows: | |
- CI | |
types: | |
- completed | |
branches: | |
- main | |
jobs: | |
exotic-os-python-tests: | |
strategy: | |
matrix: | |
os: ["windows-latest", "macos-latest"] | |
runs-on: ${{matrix.os}} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
# Use smallest supported Python version as the common denominator. | |
# In theory, if everything succeed in 3.10, everything should succeed in | |
# 3.11, 3.12 and follow-up version. | |
python-version: "3.10" | |
cache: "pip" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -r requirements.txt | |
- name: Analyze code with pylint | |
run: | | |
python -m pip install pylint | |
pylint $(git ls-files '*.py') | |
continue-on-error: true | |
- name: Build | |
run: python -m pip install '.[all]' | |
- name: Test and coverage | |
run: | | |
python -m pip install pytest pytest-cov | |
python -m pytest --cov=src/tqecd $(git ls-files '*_test.py') | |
- name: Mypy type checking | |
run: | | |
python -m pip install mypy | |
python -m mypy src/tqecd |