From dfe3f18f2154c556373689bb7c33dd1cde9d77f7 Mon Sep 17 00:00:00 2001 From: Damjan Georgievski Date: Sat, 21 Jul 2018 21:28:16 +0200 Subject: [PATCH] let's try making releases via travis supports both mac os x and linux --- .travis.yml | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..3186342 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,40 @@ +language: rust + +env: + global: + - PROJECT_NAME=http-server + +matrix: + include: + - os: osx + rust: stable + env: TARGET=x86_64-apple-darwin + cache: cargo + - os: linux + rust: stable + env: TARGET=x86_64-unknown-linux-gnu + cache: cargo + +sudo: false + +script: + - cargo build --target $TARGET + - cargo test --target $TARGET + +before_deploy: + - cargo build --release --target $TARGET + - zip "$PROJECT_NAME-$TRAVIS_TAG-$TARGET.zip" -j target/$TARGET/release/http-server + +deploy: + provider: releases + api_key: $GIT_TOKEN + file_glob: true + file: ${PROJECT_NAME}-${TRAVIS_TAG}-${TARGET}* + # don't delete the artifacts from previous phases + skip_cleanup: true + overwrite: true + # deploy when a new tag is pushed + on: + # channel to use to produce the release artifacts + condition: $TRAVIS_RUST_VERSION = stable + tags: true