dist: xenial language: python python: "3.7" jobs: include: - stage: code quality name: "pylint & mypy" install: - make install tools script: make lint - stage: test name: "Unit Tests" install: - make install tools script: - HOME=/tmp coverage run -p --source=lbry -m unittest discover -vv tests.unit - name: "Integration Tests - Data Network" install: - pip install tox-travis - sudo mount -o mode=1777,nosuid,nodev -t tmpfs tmpfs /tmp script: tox -e datanetwork - name: "Integration Tests - Blockchain" install: - pip install tox-travis - sudo mount -o mode=1777,nosuid,nodev -t tmpfs tmpfs /tmp script: tox -e blockchain - name: "Integration Tests - Other" install: - pip install tox-travis - sudo mount -o mode=1777,nosuid,nodev -t tmpfs tmpfs /tmp script: tox -e other - name: "Run Examples" install: - make install tools script: - HOME=/tmp coverage run -p --source=lbry scripts/generate_json_api.py cache: directories: - $HOME/venv - $HOME/.cache/pip - $HOME/Library/Caches/pip - $HOME/Library/Caches/Homebrew - $TRAVIS_BUILD_DIR/.tox