diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2a8103924..f1a8ff4ab 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -48,6 +48,10 @@ jobs: path: ${{ steps.pip-cache.outputs.dir }} key: ${{ runner.os }}-pip-${{ hashFiles('setup.py') }} restore-keys: ${{ runner.os }}-pip- + - id: os-name + uses: ASzc/change-string-case-action@v1 + with: + string: ${{ runner.os }} - run: pip install --user --upgrade pip wheel - if: startsWith(runner.os, 'linux') run: pip install -e .[torrent,test] @@ -60,7 +64,15 @@ jobs: - if: startsWith(runner.os, 'linux') != true env: HOME: /tmp - run: python -m unittest tests/unit/test_conf.py + run: coverage run --source=lbry -m unittest tests/unit/test_conf.py + - name: submit coverage report + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + COVERALLS_FLAG_NAME: tests-unit-${{ steps.os-name.outputs.lowercase }} + COVERALLS_PARALLEL: true + run: | + pip install coveralls + coveralls --service=github tests-integration: name: "tests / integration" @@ -96,8 +108,28 @@ jobs: path: ./.tox key: tox-integration-${{ matrix.test }}-${{ hashFiles('setup.py') }} restore-keys: txo-integration-${{ matrix.test }}- - - run: pip install tox + - run: pip install tox coverage coveralls - run: tox -e ${{ matrix.test }} + - name: submit coverage report + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + COVERALLS_FLAG_NAME: tests-integration-${{ matrix.test }} + COVERALLS_PARALLEL: true + run: | + coverage combine tests + coveralls --service=github + + + coverage: + needs: ["tests-unit", "tests-integration"] + runs-on: ubuntu-latest + steps: + - name: finalize coverage report submission + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + pip install coveralls + coveralls --service=github --finish build: needs: ["lint", "tests-unit", "tests-integration"] diff --git a/Makefile b/Makefile index d9e9f5461..d3349e525 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ test-unit: python -m unittest discover tests.unit test-unit-coverage: - coverage run -p --source=lbry -m unittest discover -vv tests.unit + coverage run --source=lbry -m unittest discover -vv tests.unit test-integration: tox diff --git a/README.md b/README.md index 57fa8b920..a2ccf3425 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# LBRY LBRY SDK [![Gitlab CI Badge](https://ci.lbry.tech/lbry/lbry-sdk/badges/master/pipeline.svg)](https://ci.lbry.tech/lbry/lbry-sdk) +# LBRY LBRY SDK [![ci](https://github.com/lbryio/lbry-sdk/actions/workflows/main.yml/badge.svg)](https://github.com/lbryio/lbry-sdk/actions/workflows/main.yml) [![coverage](https://coveralls.io/repos/github/lbryio/lbry-sdk/badge.svg)](https://coveralls.io/github/lbryio/lbry-sdk) LBRY is a decentralized peer-to-peer protocol for publishing and accessing digital content. It utilizes the [LBRY blockchain](https://github.com/lbryio/lbrycrd) as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, rights and access rules. LBRY also provides a data network that consists of peers (seeders) uploading and downloading data from other peers, possibly in exchange for payments, as well as a distributed hash table used by peers to discover other peers.