Skip to content

Convert steps to parallel jobs #776

Convert steps to parallel jobs

Convert steps to parallel jobs #776

Workflow file for this run

# Install Python dependencies and run tests
name: 'Build and test'
on:
push:
paths-ignore:
- 'docs/**'
- 'CITATION.cff'
workflow_dispatch:
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ['ubuntu-22.04', 'windows-2022', 'macos-12']
steps:
- name: Check out Forest code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Install Forest dependencies
# required by librosa
if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: |
sudo apt-get update
sudo apt-get install -y ffmpeg libsndfile1
- name: Install Forest
run: pip install -e .
- name: Install dev dependencies
run: pip install -r requirements.txt
flake8:
needs: build
runs-on: ${{ matrix.os }}
steps:
- name: Run code style checking
run: flake8
mypy:
needs: build
runs-on: ${{ matrix.os }}
steps:
- name: Run static type checking
run: mypy -p forest
legacy:
needs: build
runs-on: ${{ matrix.os }}
steps:
- name: Run legacy tests
run: python -m unittest tests/imports.py
pytest:
needs: build
runs-on: ${{ matrix.os }}
steps:
- name: Run pytest suite
run: pytest