From 85486ab9a38ea8af2ce0bc45140f085b5ba6b147 Mon Sep 17 00:00:00 2001 From: Keyvan Akbary Date: Sun, 18 Feb 2018 14:55:31 +0000 Subject: [PATCH] Auto-release binaries to Github --- .travis.yml | 31 +++++++++++++++++++++++++++++++ scripts/tag_on_master | 19 +++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 .travis.yml create mode 100644 scripts/tag_on_master diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..5276f82 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,31 @@ +language: ruby +git: + depth: false +cache: bundler +before_install: +- bundle install +after_success: +- scripts/tag_on_master +script: bundle exec rake book:build + +before_deploy: bundle install && bundle exec rake book:build +deploy: + provider: releases + file: + - cqrs-documents.epub + - cqrs-documents.mobi + - cqrs-documents.pdf + skip_cleanup: true + on: + tags: true + api-key: + secure: "keBUZQ+KIuctWegUDBYwj0YvLf+t9/YU9n/esDoyIav0WK0jiEbZO3oB+0GSvZZs73YMIPfnVl/vIlwnpRsm2HZItW7KjohL08vhpKnhefcpb7YrbGKZQOBZWDf1OX16vqCzN8LsZjTTV0btkWIyEq3zZWb1wTa4EorH8ke92ZKOvXZUA2UHT10RjZy5jmPt1nJIE7PccsmjoQ4LZ9Z8dE0/FTvA5S8XlsxC36ZaXfg4be2JzjimUVsZ1qIc5swK4WdZr7as0BSaMiX1lLGu57pKTdgG+bAO3dDpnHXbbwe3RRqmCLerVpUQK+gMoffrG4azV5+9vjYrVSeURGTIpMfR4Ie+2/94FY0rIkM/k9UWsgb1qLcNSZchpKcRgoPOWuHgyhoRKMGQo6s6ZZ605Nq2R5X+hmgTLXyOvcVwvkxZuwmS3Ey8k71FHJBj5MMoFv5Wv/6TCSFNe8LkvJ7cQg9vpLj406EahbHibLmw/XRZ2hv0lBU2vqbX6Uxf45SaaZQrjB4AJIjL6wcPftFTRoDNdPa+BlpUPTR6ghhynJ8ZQCr3YKNQAcvVgK+3YkvgvZKRH4N7CBorIs6/UCvPCZ4qnFUSuwtTjsR3MUX7p7PxDngikIx+n3IbsmRGMsleX5Y+wDr8NpL3ZG4ixfFXutYkCy2/jQgLFC9JlUiyFNM=" +branches: + only: + - master + - /^1\.0(\.\d+)+$/ + +notifications: + email: + on_success: never + on_failure: always diff --git a/scripts/tag_on_master b/scripts/tag_on_master new file mode 100644 index 0000000..a9c6fa8 --- /dev/null +++ b/scripts/tag_on_master @@ -0,0 +1,19 @@ +#!/bin/bash + +# This is for running on Travis. It automatically tags any merge to Master as a release in the 1.0.x series. +if [[ $TRAVIS_PULL_REQUEST != 'false' || "$TRAVIS_BRANCH" != 'master' ]]; then + # Don't run on pull requests + echo 'This only runs on a merge to master.' + exit 0 +fi + +# Compute the next tag number +LASTPATCH=$(git describe --tags | cut -d- -f1 | cut -d. -f3) +PATCH=$(($LASTPATCH+1)) +echo $PATCH + +# Create a tag +curl -H "Authorization: token $GITHUB_KEY" \ + -X POST \ + -d "{\"ref\":\"refs/tags/1.0.$PATCH\", \"sha\":\"$TRAVIS_COMMIT\"}" \ +https://api.github.com/repos/keyvanakbary/cqrs-documents/git/refs