dist: bionic language: python python: - 3.6 - 3.7 - 3.8 git: depth: false before_install: - git tag install: - sudo apt-get -y install libsecp256k1-0 - pip install -r contrib/requirements/requirements-travis.txt cache: - pip: true - directories: - /tmp/electrum-build script: - tox after_success: - if [ "$TRAVIS_BRANCH" = "master" ]; then pip install requests && contrib/push_locale; fi - coveralls jobs: include: - name: "Regtest functional tests" language: python python: 3.7 install: - sudo add-apt-repository -y ppa:bitcoin/bitcoin - sudo apt-get -qq update - sudo apt-get install -yq bitcoind - sudo apt-get -y install libsecp256k1-0 - pip install -r contrib/requirements/requirements.txt - pip install electrumx before_script: - electrum/tests/regtest/start_bitcoind.sh - electrum/tests/regtest/start_electrumx.sh script: - python -m unittest electrum/tests/regtest.py after_success: True - name: "Flake8 linter tests" language: python install: pip install flake8 script: flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - stage: binary builds if: branch = master name: "Windows build" language: c python: false env: - TARGET_OS=Windows services: - docker install: - sudo docker build --no-cache -t electrum-wine-builder-img ./contrib/build-wine/ script: - sudo docker run --name electrum-wine-builder-cont -v $PWD:/opt/wine64/drive_c/electrum --rm --workdir /opt/wine64/drive_c/electrum/contrib/build-wine electrum-wine-builder-img ./build.sh after_success: true - if: branch = master name: "Android build" language: python python: 3.7 services: - docker install: - pip install requests && ./contrib/pull_locale - ./contrib/make_packages - sudo docker build --no-cache -t electrum-android-builder-img electrum/gui/kivy/tools script: - sudo chown -R 1000:1000 . # Output something every minute or Travis kills the job - while sleep 60; do echo "=====[ $SECONDS seconds still running ]====="; done & - sudo docker run -it -u 1000:1000 --rm --name electrum-android-builder-cont --env CI=true -v $PWD:/home/user/wspace/electrum --workdir /home/user/wspace/electrum electrum-android-builder-img ./contrib/make_apk # kill background sleep loop - kill %1 - ls -la bin - if [ $(ls bin | grep -c Electrum-*) -eq 0 ]; then exit 1; fi after_success: true - if: branch = master name: "MacOS build" os: osx language: c env: - TARGET_OS=macOS python: false install: - git fetch --all --tags script: ./contrib/osx/make_osx after_script: ls -lah dist && md5 dist/* after_success: true - if: branch = master name: "AppImage build" language: c python: false services: - docker install: - sudo docker build --no-cache -t electrum-appimage-builder-img ./contrib/build-linux/appimage/ script: - sudo docker run --name electrum-appimage-builder-cont -v $PWD:/opt/electrum --rm --workdir /opt/electrum/contrib/build-linux/appimage electrum-appimage-builder-img ./build.sh after_success: true - stage: release check install: - git fetch --all --tags script: - ./contrib/deterministic-build/check_submodules.sh after_success: true if: tag IS present