2018-07-24 09:06:53 +02:00
|
|
|
sudo: required
|
2018-07-22 01:32:05 +02:00
|
|
|
dist: xenial
|
2017-02-15 18:10:40 +01:00
|
|
|
language: python
|
2018-07-29 06:24:38 +02:00
|
|
|
python: "3.7"
|
2017-02-15 18:10:40 +01:00
|
|
|
|
2018-07-22 01:32:05 +02:00
|
|
|
jobs:
|
|
|
|
include:
|
2017-10-25 18:26:04 +02:00
|
|
|
|
2018-07-27 01:18:48 +02:00
|
|
|
- stage: code quality
|
|
|
|
name: "pylint lbrynet"
|
|
|
|
install:
|
|
|
|
- pip install pylint
|
|
|
|
- pip install git+https://github.com/lbryio/torba.git
|
|
|
|
- pip install git+https://github.com/lbryio/lbryschema.git
|
|
|
|
- pip install -e .
|
|
|
|
script: pylint lbrynet
|
|
|
|
|
2018-07-29 06:24:38 +02:00
|
|
|
- &tests
|
|
|
|
stage: test
|
|
|
|
name: "Unit Tests w/ Python 3.7"
|
2018-07-27 01:18:48 +02:00
|
|
|
install:
|
|
|
|
- pip install coverage
|
2018-10-16 05:27:35 +02:00
|
|
|
- pip install git+https://github.com/lbryio/electrumx.git#lbryumx
|
|
|
|
- pip install git+https://github.com/lbryio/orchstr8.git
|
2018-07-27 01:18:48 +02:00
|
|
|
- pip install git+https://github.com/lbryio/lbryschema.git
|
2018-10-16 05:22:25 +02:00
|
|
|
- pip install git+https://github.com/lbryio/lbryumx.git
|
|
|
|
- pip install git+https://github.com/lbryio/torba.git
|
2018-07-27 01:18:48 +02:00
|
|
|
- pip install -e .[test]
|
2018-10-16 05:04:04 +02:00
|
|
|
script:
|
|
|
|
- HOME=/tmp coverage run -p --source=lbrynet -m unittest discover -v tests.unit.wallet
|
|
|
|
- HOME=/tmp coverage run -p --source=lbrynet -m twisted.trial --reactor=asyncio tests.unit.analytics tests.unit.components tests.unit.core tests.unit.cryptstream tests.unit.database tests.unit.dht tests.unit.lbryfilemanager tests.unit.lbrynet_daemon tests.unit.test_cli tests.unit.test_customLogger
|
2018-07-27 23:56:13 +02:00
|
|
|
after_success:
|
2018-10-16 05:04:04 +02:00
|
|
|
- coverage combine
|
2018-07-27 23:56:13 +02:00
|
|
|
- bash <(curl -s https://codecov.io/bash)
|
2018-08-22 06:12:46 +02:00
|
|
|
|
2018-07-29 06:24:38 +02:00
|
|
|
- <<: *tests
|
|
|
|
name: "Unit Tests w/ Python 3.6"
|
|
|
|
python: "3.6"
|
2018-07-27 23:56:13 +02:00
|
|
|
|
2018-08-22 06:12:46 +02:00
|
|
|
- <<: *tests
|
|
|
|
name: "DHT Tests w/ Python 3.7"
|
|
|
|
script: HOME=/tmp coverage run --source=lbrynet -m twisted.trial --reactor=asyncio tests.functional
|
|
|
|
|
|
|
|
- <<: *tests
|
|
|
|
name: "DHT Tests w/ Python 3.6"
|
|
|
|
python: "3.6"
|
|
|
|
script: HOME=/tmp coverage run --source=lbrynet -m twisted.trial --reactor=asyncio tests.functional
|
|
|
|
|
2018-07-27 01:18:48 +02:00
|
|
|
- name: "Integration Tests"
|
|
|
|
install:
|
|
|
|
- pip install tox-travis coverage
|
|
|
|
- pushd .. && git clone https://github.com/lbryio/electrumx.git --branch lbryumx && popd
|
|
|
|
- pushd .. && git clone https://github.com/lbryio/orchstr8.git && popd
|
|
|
|
- pushd .. && git clone https://github.com/lbryio/lbryschema.git && popd
|
2018-08-24 20:15:57 +02:00
|
|
|
- pushd .. && git clone https://github.com/lbryio/lbryumx.git && cd lbryumx && git checkout afd34f323dd94c516108a65240f7d17aea8efe85 && cd .. && popd
|
2018-07-27 01:18:48 +02:00
|
|
|
- pushd .. && git clone https://github.com/lbryio/torba.git && popd
|
|
|
|
script: tox
|
|
|
|
after_success:
|
|
|
|
- coverage combine tests/
|
|
|
|
- bash <(curl -s https://codecov.io/bash)
|
2018-07-07 00:31:35 +02:00
|
|
|
|
2018-07-24 09:06:53 +02:00
|
|
|
- stage: build
|
2018-07-27 01:18:48 +02:00
|
|
|
name: "Windows"
|
2018-07-29 16:55:30 +02:00
|
|
|
language: generic
|
2018-07-27 01:18:48 +02:00
|
|
|
services:
|
|
|
|
- docker
|
|
|
|
install:
|
|
|
|
- docker pull cdrx/pyinstaller-windows:python3-32bit
|
|
|
|
script:
|
|
|
|
- docker run -v "$(pwd):/src/lbry" cdrx/pyinstaller-windows:python3-32bit lbry/scripts/wine_build.sh
|
2018-09-27 01:18:53 +02:00
|
|
|
- sudo zip -j dist/lbrynet-windows.zip dist/lbrynet.exe
|
2018-07-27 01:18:48 +02:00
|
|
|
addons:
|
|
|
|
artifacts:
|
|
|
|
working_dir: dist
|
|
|
|
paths:
|
2018-09-26 23:52:21 +02:00
|
|
|
- lbrynet-windows.zip
|
2018-07-27 01:18:48 +02:00
|
|
|
target_paths:
|
2018-07-27 22:20:10 +02:00
|
|
|
- /daemon/build-${TRAVIS_BUILD_NUMBER}_commit-${TRAVIS_COMMIT:0:7}_branch-${TRAVIS_BRANCH}$([ ! -z ${TRAVIS_TAG} ] && echo _tag-${TRAVIS_TAG})/win/
|
2018-07-27 01:18:48 +02:00
|
|
|
|
2018-07-29 06:16:57 +02:00
|
|
|
- &build
|
|
|
|
name: "Linux"
|
2018-07-29 06:24:38 +02:00
|
|
|
python: "3.6"
|
2018-07-27 00:08:26 +02:00
|
|
|
install:
|
2018-07-27 01:13:14 +02:00
|
|
|
- pip3 install pyinstaller
|
|
|
|
- pip3 install git+https://github.com/lbryio/torba.git
|
|
|
|
- pip3 install git+https://github.com/lbryio/lbryschema.git
|
2018-10-22 22:31:05 +02:00
|
|
|
- python scripts/set_build.py
|
2018-07-27 01:13:14 +02:00
|
|
|
- pip3 install -e .
|
2018-07-24 09:06:53 +02:00
|
|
|
script:
|
2018-07-27 04:04:43 +02:00
|
|
|
- pyinstaller -F -n lbrynet lbrynet/cli.py
|
2018-09-26 21:54:40 +02:00
|
|
|
- chmod +x dist/lbrynet
|
2018-09-26 23:52:21 +02:00
|
|
|
- zip -j dist/lbrynet-${OS}.zip dist/lbrynet
|
2018-07-27 04:04:43 +02:00
|
|
|
- ./dist/lbrynet --version
|
2018-07-29 06:16:57 +02:00
|
|
|
env: OS=linux
|
2018-07-27 00:08:26 +02:00
|
|
|
addons:
|
|
|
|
artifacts:
|
|
|
|
working_dir: dist
|
|
|
|
paths:
|
2018-09-26 23:20:24 +02:00
|
|
|
- lbrynet-${OS}.zip
|
2018-07-27 22:59:49 +02:00
|
|
|
# artifact uploader thinks lbrynet is a directory, https://github.com/travis-ci/artifacts/issues/78
|
2018-07-27 00:08:26 +02:00
|
|
|
target_paths:
|
2018-07-29 06:16:57 +02:00
|
|
|
- /daemon/build-${TRAVIS_BUILD_NUMBER}_commit-${TRAVIS_COMMIT:0:7}_branch-${TRAVIS_BRANCH}$([ ! -z ${TRAVIS_TAG} ] && echo _tag-${TRAVIS_TAG})/${OS}/lbrynet
|
|
|
|
|
|
|
|
- <<: *build
|
|
|
|
name: "Mac"
|
|
|
|
os: osx
|
|
|
|
osx_image: xcode9.4
|
|
|
|
language: generic
|
|
|
|
env: OS=mac
|
2018-07-24 09:06:53 +02:00
|
|
|
|
2018-07-07 00:31:35 +02:00
|
|
|
cache:
|
|
|
|
directories:
|
|
|
|
- $HOME/.cache/pip
|
|
|
|
- $HOME/Library/Caches/pip
|
|
|
|
- $TRAVIS_BUILD_DIR/.tox
|