name: Build on: push: branches: [ master ] pull_request: branches: [ master ] jobs: build: name: Test on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, windows-latest, macOS-latest] python_version: [3.9] steps: - uses: actions/checkout@v2 with: submodules: 'recursive' - name: Set up Python uses: actions/setup-python@v5 with: python-version: ${{ matrix.python_version }} - name: Install dependencies shell: bash run: | pip install poetry==1.3.2 python -m venv venv source venv/bin/activate || source venv/Scripts/activate make build - name: Run tests shell: bash run: | source venv/bin/activate || source venv/Scripts/activate make test make typecheck - name: Report coverage shell: bash run: | # Allow to fail, since sometimes codecov servers are grumpy bash <(curl -s https://codecov.io/bash) || true