X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=docs%2Fscript%2Frelease;fp=docs%2Fscript%2Frelease;h=fb400aab392d9e1b0364a391b9dbdd623846862d;hb=33bbc84ab0c6a63866e2e1716718a43040f3a44b;hp=0000000000000000000000000000000000000000;hpb=3ec50fe5633109e1f8d20d3ed40c06eaa00ab6cc;p=osm%2Fvim-emu.git diff --git a/docs/script/release b/docs/script/release new file mode 100755 index 0000000..fb400aa --- /dev/null +++ b/docs/script/release @@ -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-cayman-*.gem +gem build -q jekyll-theme-cayman.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-cayman-*.gem | sed 's/^jekyll-theme-cayman-\(.*\)\.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-cayman-*.gem && git tag "$tag" && + git push origin master && git push origin "$tag"