summaryrefslogtreecommitdiffstats
path: root/.travis.yml
diff options
context:
space:
mode:
authorAndrew Gallant <jamslam@gmail.com>2016-09-05 20:08:46 -0400
committerAndrew Gallant <jamslam@gmail.com>2016-09-05 20:08:46 -0400
commit1a3e7c0bb2b7f4269856f3e1f0377a6a64f4339c (patch)
treef8bd31de2e47df9ae4d4f2deda09a824e0a6fff5 /.travis.yml
parent02ac331529e2570b48ffcd4a735ad8bccb0cb72c (diff)
Trying CI.
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml82
1 files changed, 72 insertions, 10 deletions
diff --git a/.travis.yml b/.travis.yml
index b26fdbbd..6dca2122 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,12 +1,74 @@
+#language: rust
+#rust:
+# - stable
+# - beta
+# - nightly
+#script:
+# - cargo build --verbose
+# - cargo doc
+# - cargo test --verbose
+# - if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then
+# cargo bench --verbose;
+# fi
+
language: rust
-rust:
- - stable
- - beta
- - nightly
+cache: cargo
+
+env:
+ global:
+ - PROJECT_NAME=xrep
+matrix:
+ include:
+ # Nightly channel
+ - os: osx
+ rust: nightly
+ env: TARGET=i686-apple-darwin
+ - os: osx
+ rust: nightly
+ env: TARGET=x86_64-apple-darwin
+ - os: linux
+ rust: nightly
+ env: TARGET=i686-unknown-linux-musl
+ - os: linux
+ rust: nightly
+ env: TARGET=x86_64-unknown-linux-musl
+
+before_install:
+ - export PATH="$PATH:$HOME/.cargo/bin"
+
+install:
+ - bash ci/install.sh
+
script:
- - cargo build --verbose
- - cargo doc
- - cargo test --verbose
- - if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then
- cargo bench --verbose;
- fi
+ - bash ci/script.sh
+
+before_deploy:
+ - bash ci/before_deploy.sh
+
+deploy:
+ provider: releases
+ api_key:
+ secure: aDT53aTIcl6RLcd4/StnKT55LgJyjiCtsmu1Byy0TIEtP4ZfNhsHwCbqyZT6TLownLJPi5wLM1WRncGKNYQelFDk/mUA8YugcFDfiSN//ZZ8KLAQiI+PX6JCrFYr/ZmP4dJzFWS1hPsr/X0gdbrlb3kuQG7BI9gH3GY4yTsLNiY=
+ file_glob: true
+ file: ${PROJECT_NAME}-${TRAVIS_TAG}-${TARGET}.*
+ # don't delete the artifacts from previous phases
+ skip_cleanup: true
+ # deploy when a new tag is pushed
+ on:
+ # channel to use to produce the release artifacts
+ # NOTE make sure you only release *once* per target
+ # TODO you may want to pick a different channel
+ condition: $TRAVIS_RUST_VERSION = nightly
+ tags: true
+
+branches:
+ only:
+ # Pushes and PR to the master branch
+ - master
+ # IMPORTANT Ruby regex to match tags. Required, or travis won't trigger deploys when a new tag
+ # is pushed. This regex matches semantic versions like v1.2.3-rc4+2016.02.22
+ - /^\d+\.\d+\.\d+.*$/
+
+notifications:
+ email:
+ on_success: never