Skip to content

Commit

Permalink
Add release script
Browse files Browse the repository at this point in the history
  • Loading branch information
benbalter committed Dec 14, 2016
1 parent 335852b commit 2052e36
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions script/release
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
#!/bin/sh
# Tag and push a release.

set -e

# Make sure we're in the project root.

cd $(dirname "$0")/..

# Make sure the darn thing works

bundle update

# Build a new gem archive.

rm -rf jekyll-theme-slate-*.gem
gem build -q jekyll-theme-slate.gemspec

# Make sure we're on the master branch.

(git branch | grep -q 'master') || {
echo "Only release from the master branch."
exit 1
}

# Figure out what version we're releasing.

tag=v`ls jekyll-theme-slate-*.gem | sed 's/^jekyll-theme-slate-\(.*\)\.gem$/\1/'`

# Make sure we haven't released this version before.

git fetch -t origin

(git tag -l | grep -q "$tag") && {
echo "Whoops, there's already a '${tag}' tag."
exit 1
}

# Tag it and bag it.

gem push jekyll-theme-slate-*.gem && git tag "$tag" &&
git push origin master && git push origin "$tag"

0 comments on commit 2052e36

Please sign in to comment.