This commit is contained in:
Jorge Aparicio 2017-04-11 23:12:06 -05:00
parent 5ae7d5f6e0
commit 6af1873922
3 changed files with 86 additions and 0 deletions

46
.travis.yml Normal file
View file

@ -0,0 +1,46 @@
# Based on the "trust" template v0.1.1
# https://github.com/japaric/trust/tree/v0.1.1
dist: trusty
language: rust
services: docker
sudo: required
matrix:
include:
- env: TARGET=x86_64-unknown-linux-gnu
rust: nightly
- env: TARGET=thumbv6m-none-eabi
rust: nightly
- env: TARGET=thumbv7m-none-eabi
rust: nightly
- env: TARGET=thumbv7em-none-eabi
rust: nightly
- env: TARGET=thumbv7em-none-eabihf
rust: nightly
before_install: set -e
install:
- sh ci/install.sh
- source ~/.cargo/env || true
script:
- bash ci/script.sh
after_script: set +e
cache: cargo
before_cache:
# Travis can't cache files that are not readable by "others"
- chmod -R a+r $HOME/.cargo
branches:
only:
# release tags
- /^v\d+\.\d+\.\d+.*$/
- master
notifications:
email:
on_success: never

27
ci/install.sh Normal file
View file

@ -0,0 +1,27 @@
set -ex
main() {
local target=
if [ $TRAVIS_OS_NAME = linux ]; then
target=x86_64-unknown-linux-musl
sort=sort
else
target=x86_64-apple-darwin
sort=gsort # for `sort --sort-version`, from brew's coreutils.
fi
# This fetches latest stable release
local tag=$(git ls-remote --tags --refs --exit-code https://github.com/japaric/cross \
| cut -d/ -f3 \
| grep -E '^v[0.1.0-9.]+$' \
| $sort --version-sort \
| tail -n1)
curl -LSfs https://japaric.github.io/trust/install.sh | \
sh -s -- \
--force \
--git japaric/cross \
--tag $tag \
--target $target
}
main

13
ci/script.sh Normal file
View file

@ -0,0 +1,13 @@
set -ex
main() {
if [ $TARGET = x86_64-unknown-linux-gnu ]; then
cargo test
return
fi
cross build --target $TARGET
cross build --target $TARGET --release
}
main