bottom/.travis.yml
2019-12-16 02:31:49 -05:00

75 lines
2.3 KiB
YAML

language: rust
rust:
- stable
- beta
- nightly
os:
- windows
- osx
- linux
env:
- RUST_BACKTRACE=1
jobs:
allow_failures:
- rust: nightly
# From https://levans.fr/rust_travis_cache.html
# Need to cache the whole `.cargo` directory to keep .crates.toml for
# cargo-update to work
cache:
directories:
- /home/travis/.cargo
# But don't cache the cargo registry
before_cache:
- rm -rf /home/travis/.cargo/registry
GH_TOKEN: &GH_TOKEN
secure: ckWcEQHz8SekxaAdBNpiT+YF6ST0pJS15lC4MNT1mIzLMgEXpJI/peNwwRf+FGJiyqNtaK5YUAB6cP25w9QZsrwBLmLJ9wcGaHJuPc7XKvpHkEiFwTDaOqrIRmYhvAfjwH5IycnyAlAzsHsPujmhCWQyiW4YSziCOqtByY4ftzchOCh44kWmqf7HI6uSPSFfqHtTdkM21Dgwm+NpYPmwO0wmrEIwCNkN62Fb+Ghk9AqJH67vDLs+mvKQTdDc2X+fDT9sQxTI4dftSGx2JDkivwVfxX3kOroZvIRG6WmEGYyzU6wLYJlfFSg6svofdOZwNC71Byr5gEFLZOCfWrd2P4gF+CMA61PqGQMBAgAMVX4kCMblERyAdTVFKtP+WPOEBoWqsNLdzQhulF+w71MDRBnfDmuQ2TRegobCTvKefp0I3YYLLoKrDNMIvQ9572DcvLME4hzBwnizy8G1UBepqz3oa3R/6Kr8NlYBHnbbUBmzVZW1jZokz3T/c7r2fqC7h6pC8VtUh/e246ROF0k9mCVKKrsfrEZ4UjRL8RmuAQ12CeAa1GsSSwtbbwW2VIX0iVVXo080iGMKZHTTvDIRHkjA3MzPuAZyUruCjp9yQmpbG/cSzR8aJPzIia9+qXp0jmML3Du52qsF8m68gbcOpNS0CHOQY9wmuWhCatmzt2Y=
DEPLOY_TO_GITHUB: &DEPLOY_TO_GITHUB
before_deploy:
- git config --local user.name "ClementTsang"
- git config --local user.email "clementjhtsang@gmail.com"
- name="bottom-$TRAVIS_TAG-$TARGET"
- mkdir $name
- cp target/$TARGET/release/btm $name/
- cp README.md LICENSE-MIT LICENSE-APACHE $name/
- tar czvf $name.tar.gz $name
deploy:
provider: releases
api_key: *GH_TOKEN
file: bottom-$TRAVIS_TAG-$TARGET.tar.gz
file_glob: true
skip_cleanup: true
on:
branch: master
tags: true
matrix:
fast_finish: true
include:
- name: Linux Binary
env: TARGET=x86_64-unknown-linux-musl
os: linux
rust: stable
before_script: rustup target add $TARGET
script: cargo build --release --target $TARGET
addons:
apt:
packages:
- musl-tools
<<: *DEPLOY_TO_GITHUB
- name: Windows Binary
env: TARGET=x86_64-pc-windows-msvc
os: windows
rust: stable
before_script: rustup target add $TARGET
script: cargo build --release --target $TARGET
<<: *DEPLOY_TO_GITHUB
notifications:
email:
on_success: never