language: rust # Caching of the runtime .wasm blob poses a problem. # See: https://github.com/Joystream/joystream/issues/466 # Always starting with a clean slate is probably better, it allows us to ensure # the WASM runtime is always rebuilt. It also allows us to detect when certain upstream dependencies # sometimes break the build. When cache is enabled do not use the produced WASM build. # This also means the binary should not be used to produce the final chainspec file (because the same # one is embedded in the binary) # cache: cargo rust: stable # Skip Rust build in a pull request if no rust project files were modified before_install: - | if [ "$TRAVIS_PULL_REQUEST" != "false" ] then if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qE "(.rs|Cargo.(lock|toml))$" then echo "No changes to Rust or Cargo Files, CI not running." travis_terminate 0 fi fi install: - rustup install nightly-2020-05-23 --force - rustup target add wasm32-unknown-unknown --toolchain nightly-2020-05-23 # travis installs rust using rustup with the "minimal" profile so these tools are not installed by default - rustup component add rustfmt - rustup component add clippy before_script: - cargo fmt --all -- --check script: - export WASM_BUILD_TOOLCHAIN=nightly-2020-05-23 - BUILD_DUMMY_WASM_BINARY=1 cargo clippy --release --all -- -D warnings - travis_wait 75 cargo test --release --verbose --all -- --ignored - cargo build --release - ls -l ./target/release/wbuild/joystream-node-runtime/ - ./target/release/joystream-node --version - ./target/release/chain-spec-builder --version