language: python # Runs jobs on container based infrastructure sudo: false # Saves pip downloads/wheels between builds cache: directories: - $HOME/.cache/pip addons: apt: packages: - libudev-dev - libusb-1.0-0-dev env: global: PROTOBUF_VERSION=3.4.0 python: - "3.3" - "3.4" - "3.5" - "3.6" install: # Optimisation: build requirements as wheels, which get cached by Travis - pip install "pip>=7.0" wheel - pip install "setuptools>=38" - pip install tox-travis - pip install flake8 # protobuf-related dependencies - curl -LO "https://github.com/google/protobuf/releases/download/v${PROTOBUF_VERSION}/protoc-${PROTOBUF_VERSION}-linux-x86_64.zip" - unzip "protoc-${PROTOBUF_VERSION}-linux-x86_64.zip" -d protoc - export PATH="$(pwd)/protoc/bin:$PATH" - pip install "protobuf == ${PROTOBUF_VERSION}" before_script: - ./trigger-travis.sh script: # check that generated protobuf messages are identical to in-tree ones - ./tools/build_protobuf messages.tmp && diff -ur messages.tmp trezorlib/messages && rm -r messages.tmp - python setup.py install - flake8 - tox notifications: webhooks: urls: - http://ci-bot.satoshilabs.com:5000/travis on_success: always on_failure: always on_start: always