Pure import of lightning-invoice crate
[rust-lightning] / lightning-invoice / .travis.yml
1 language: rust
2 sudo: required
3 rust:
4   - nightly
5   - beta
6   - stable
7 cache: cargo
8
9 jobs:
10   include:
11   - rust: 1.29.0
12     script:
13       - cargo generate-lockfile --verbose
14       - cargo update -p cc --precise "1.0.41" --verbose
15       - cargo build
16       - cargo test
17   - stage: fuzz
18     before_install:
19       - sudo apt-get -qq update
20       - sudo apt-get install -y binutils-dev libunwind8-dev
21     rust: stable
22     script: cd fuzz && cargo test --verbose && ./travis-fuzz.sh
23   - stage: coverage
24     if: type = cron || type = push
25     before_install:
26       - sudo apt-get -qq update
27       - sudo apt-get install cmake g++ pkg-config jq libcurl4-openssl-dev libelf-dev libdw-dev binutils-dev libiberty-dev
28       - cargo install -f cargo-kcov
29       - for i in {0..10}; do echo "retry $i"; (cargo kcov --print-install-kcov-sh | sh) && break; done
30     rust: stable
31     script: bash .travis-kcov.sh