grin-wallet/.travis.yml
2019-02-15 15:14:38 +00:00

82 lines
1.8 KiB
YAML

language: rust
git:
depth: false
dist: trusty
sudo: required
cache:
cargo: true
timeout: 240
directories:
- $HOME/.cargo
- $TRAVIS_BUILD_DIR/target
before_cache:
- rm -rf $TRAVIS_BUILD_DIR/target/tmp
rust:
- stable
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- cmake
- libcurl4-openssl-dev
- libelf-dev
- libdw-dev
- cmake
- gcc
- binutils-dev
env:
global:
- RUST_BACKTRACE="1"
- RUST_FLAGS="-C debug-assertions"
matrix:
include:
- os: linux
env: TEST_SUITE=config-libwallet-apiwallet
- os: linux
env: TEST_SUITE=refwallet-.
- os: osx
env: TEST_SUITE=release
script:
- IFS='-' read -r -a DIRS <<< "$TEST_SUITE"; DIR=${DIRS[0]};
echo "start testing on folder $DIR...";
if [[ -n "$DIR" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then cd $DIR && cargo test --release && cd - > /dev/null; fi;
- IFS='-' read -r -a DIRS <<< "$TEST_SUITE"; DIR=${DIRS[1]};
if [[ -n "$DIR" ]]; then
echo "start testing on folder $DIR...";
cd $DIR && cargo test --release && cd - > /dev/null;
fi;
- IFS='-' read -r -a DIRS <<< "$TEST_SUITE"; DIR=${DIRS[2]};
if [[ -n "$DIR" ]]; then
echo "start testing on folder $DIR...";
cd $DIR && cargo test --release && cd - > /dev/null;
fi;
before_deploy:
- if [[ "$TEST_SUITE" == "refwallet-." ]]; then
cargo clean && cargo build --release && ./.auto-release.sh;
fi
- if [[ "$TEST_SUITE" == "release" ]] && [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
brew update;
cargo clean && cargo build --release && ./.auto-release.sh;
fi
deploy:
provider: releases
api_key: $GITHUB_TOKEN
file_glob: true
file: target/release/grin-wallet-*.tgz*
skip_cleanup: true
on:
repo: mimblewimble/grin-wallet
tags: true