mirror of
https://github.com/rtic-rs/rtic.git
synced 2024-11-29 15:04:32 +01:00
add CI
This commit is contained in:
parent
5ae7d5f6e0
commit
6af1873922
3 changed files with 86 additions and 0 deletions
46
.travis.yml
Normal file
46
.travis.yml
Normal 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
27
ci/install.sh
Normal 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
13
ci/script.sh
Normal 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
|
Loading…
Reference in a new issue