From 3bcb4a2e18f94a70b74f1e6c480681bd5fe936a7 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Sun, 4 Aug 2019 15:11:12 +0200 Subject: Deploy releases to GitHub from TravisCI --- .travis.yml | 10 ++++++++++ ci/before_deploy.sh | 26 ++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 ci/before_deploy.sh diff --git a/.travis.yml b/.travis.yml index e1c138a..4f15696 100644 --- a/.travis.yml +++ b/.travis.yml @@ -31,6 +31,16 @@ branches: # is pushed. This regex matches semantic versions like v1.2.3-rc4+2016.02.22 - /^\d+\.\d+\.\d+.*$/ +before_deploy: bash ci/before_deploy.sh +deploy: + provider: releases + api_key: + secure: "TODO: add key" + file: $PROJECT_NAME-$TRAVIS_TAG-$TARGET.tar.gz + skip_cleanup: true + on: + tags: true + notifications: email: on_success: never diff --git a/ci/before_deploy.sh b/ci/before_deploy.sh new file mode 100644 index 0000000..635c47e --- /dev/null +++ b/ci/before_deploy.sh @@ -0,0 +1,26 @@ +set -ex + +build_release() { + cargo build --target $TARGET --release --verbose +} + +mk_tarball() { + local tmpdir="$(mktemp -d)" + local name="$PROJECT_NAME-$TRAVIS_TAG-$TARGET" + local release_dir="$tmpdir/$name" + + mkdir -p "$release_dir" + + cp "target/$TARGET/release/podcast" "$release_dir/podcast" + + cd "$tmpdir" + tar czf "$TRAVIS_BUILD_DIR/$name.tar.gz" "$name" + rm -rf "$tmpdir" +} + +main() { + build_release + mk_tarball +} + +main -- cgit v1.2.3