194953ac9SMatthias Sohn#!/bin/bash 294953ac9SMatthias Sohn# 394953ac9SMatthias Sohn# script to create a jgit release 494953ac9SMatthias Sohn 594953ac9SMatthias Sohn# uncomment to switch on trace 694953ac9SMatthias Sohn#set -x 794953ac9SMatthias Sohn 894953ac9SMatthias Sohn# abort if a command hits an error 994953ac9SMatthias Sohnset -e 1094953ac9SMatthias Sohn 1194953ac9SMatthias Sohnexport basePath=$(cd "$(dirname "$0")"; pwd) 1294953ac9SMatthias Sohnecho basePath $basePath 1394953ac9SMatthias Sohn 1494953ac9SMatthias Sohnif [ -z $1 ]; then 1594953ac9SMatthias Sohn echo " 1694953ac9SMatthias Sohn Usage: 1794953ac9SMatthias Sohn $ release.sh <release version tag> 1894953ac9SMatthias Sohn 1994953ac9SMatthias Sohn e.g. release.sh v3.4.0.201405051725-m7 2094953ac9SMatthias Sohn" 2194953ac9SMatthias Sohn exit 2294953ac9SMatthias Sohnfi 2394953ac9SMatthias Sohn 2494953ac9SMatthias Sohn# trimmed git status 2594953ac9SMatthias Sohnexport status=$(git status --porcelain) 2694953ac9SMatthias Sohn 2794953ac9SMatthias Sohnif [ ! -z "$status" ]; 2894953ac9SMatthias Sohnthen 2994953ac9SMatthias Sohn echo " 3094953ac9SMatthias Sohn working tree is dirty -> can't create release 3194953ac9SMatthias Sohn" 3294953ac9SMatthias Sohn exit 3394953ac9SMatthias Sohnfi 3494953ac9SMatthias Sohn 3594953ac9SMatthias SohnMSG="JGit $1" 3694953ac9SMatthias Sohn 3794953ac9SMatthias Sohn# tag release 3894953ac9SMatthias Sohngit tag -s -m "$MSG" $1 3994953ac9SMatthias Sohn 4094953ac9SMatthias Sohn# update version numbers 4194953ac9SMatthias Sohn./tools/version.sh --release 4294953ac9SMatthias Sohn 4394953ac9SMatthias Sohn# commit changed version numbers 4494953ac9SMatthias Sohngit commit -a -s -m "$MSG" 4594953ac9SMatthias Sohn 4694953ac9SMatthias Sohn# move the tag to the version we release 4794953ac9SMatthias Sohngit tag -sf -m "$MSG" $1 4894953ac9SMatthias Sohn 4994953ac9SMatthias Sohn# run the build 50*e3b45f79SMatthias Sohnmvn clean install -T 1C 5194953ac9SMatthias Sohnmvn clean install -f org.eclipse.jgit.packaging/pom.xml 52