Created
June 1, 2016 11:38
-
-
Save kasunbg/6533c13088c77d1af99da464d0c1bf39 to your computer and use it in GitHub Desktop.
automated-maven-release-process
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
REPO_NAME=$1 | |
#possible values: 1.7 1.8 | |
JDK_TO_USE=$2 | |
HOME=/build/release-builds/kasung/ | |
JDK_18=/build/software/java/jdk1.8.0_20 | |
JDK_17=/build/software/java/jdk1.7.0_51 | |
MAVEN_LOCAL_REPO=${HOME}/m2/${REPO_NAME}$(( ( RANDOM % 1000 ) + 1 )) | |
if [ -z "$1" ]; then | |
echo "Enter repo name as an argument." | |
echo "Sample Usage: ./release-script.sh carbon-deployment 1.8" | |
exit 1; | |
fi | |
if [ -z "$2" ]; then | |
echo "No JDK info provided. Defaults to JDK 1.7" | |
JDK_TO_USE=1.8 | |
fi | |
if [ -d "${HOME}/${REPO_NAME}" ]; then | |
echo "A clone already exists at ${HOME}/${REPO_NAME}.. Exiting." | |
exit 1; | |
fi | |
if [ -d "${MAVEN_LOCAL_REPO}" ]; then | |
echo "Deleting local maven repo " ${MAVEN_LOCAL_REPO} | |
rm -r ${MAVEN_LOCAL_REPO}; | |
fi | |
if [ ! -d "$HOME" ]; then | |
mkdir $HOME | |
fi | |
cd $HOME | |
echo "Current working directory : " $HOME | |
git clone https://github.com/wso2/${REPO_NAME}.git | |
cd ${REPO_NAME} | |
git config user.email "kasunbg@gmail.com" | |
git config user.name "Kasun Gajasinghe" | |
ACTUAL_JDK=$(mvn -version | grep "Java version" | sed -e 's/Java version: \(.*\),.*/\1/' | sed -e 's/\(.*\).._.*/\1/') | |
if [ "$JDK_TO_USE" != "$ACTUAL_JDK" ]; then | |
echo "JDK version mismatch." | |
if [ "$JDK_TO_USE" = "1.8" ] | |
then | |
echo "Setting JAVA_HOME to " $JDK_18 | |
JAVA_HOME=$JDK_18 | |
else | |
echo "Setting JAVA_HOME to " $JDK_17 | |
JAVA_HOME=$JDK_17 | |
fi | |
fi | |
mvn -version | |
echo "Starting release prepare and perform. Don't press Enter unless absolutely necessary!" | |
echo "" | |
mvn release:clean release:prepare release:perform -s ${HOME}/release/settings.xml -Dmaven.repo.local=${MAVEN_LOCAL_REPO} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment