name: lint and test on: [push, pull_request] jobs: test: strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] python-version: [3.7, 3.8, 3.9, "3.10", "3.11"] requirements: [''] include: - requirements: "-r requirements-min.txt" python-version: 3.7 os: ubuntu-latest runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install ${{ matrix.requirements }} .[test,optional] - name: Test with pytest run: | pytest --cov=pvanalytics --cov-config=.coveragerc --cov-report term-missing pvanalytics --runslow - name: Upload Coverage run: | pip install --upgrade coveralls coveralls env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} COVERALLS_FLAG_NAME: ${{ matrix.os }}-${{ matrix.python-version }}-${{ matrix.requirements }} COVERALLS_PARALLEL: true COVERALLS_SERVICE_NAME: github coveralls: name: Finish Coveralls needs: test runs-on: ubuntu-latest steps: - name: Set up Python 3.8 uses: actions/setup-python@v1 with: python-version: 3.8 - name: Finish Coveralls Upload run: | pip install --upgrade pip pip install --upgrade coveralls coveralls --finish env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} lint: strategy: matrix: python-version: [3.7] runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Lint with flake8 run: | python -m pip install --upgrade pip pip install flake8 flake8 . --count --statistics --show-source