#!/bin/bash if [ "$(egrep '.*-rc-[0-9]+-SNAPSHOT' pom.xml)" = "" ]; then echo "Project has not been promoted to a release candidate." exit fi mvn clean modifications=$(svn status | egrep '^[\?MA]') if [ "$modifications" != "" ]; then echo "There are local modifications. Aborting." echo $modifications exit fi sed -e 's~-SNAPSHOT~~' blojsom/ant_pom.xml > blojsom/ant_pom.xml.tmp mv blojsom/ant_pom.xml.tmp blojsom/ant_pom.xml svn commit -m 'preparing release candidate' mvn install mvn clean mvn --batch-mode release:prepare -DpreparationGoals="clean install" if [ $? -ne 0 ]; then exit fi #mvn release:perform -DuseReleaseProfile=false #if [ $? -ne 0 ]; then # exit #fi release=$(egrep -- '-rc-[0-9]+' blojsom/ant_pom.xml | sed -e 's~^.*~~' -e 's~.*$~~') nextSnapshot=$(fgrep -- '-SNAPSHOT' pom.xml | sed -e 's~^.*~~' -e 's~.*$~~') sed -e "s~$release~$nextSnapshot~" blojsom/ant_pom.xml > blojsom/ant_pom.xml.tmp mv blojsom/ant_pom.xml.tmp blojsom/ant_pom.xml svn commit -m "adding next snapshot version ($nextSnapshot) after release candidate ($release)" blojsom/ant_pom.xml