LOCAL_REPO=/Users/tsy/Deploy
REPOSITORY_ID_SNAPSHOT=surpath-snapshots
REPOSITORY_URL_SNAPSHOT=http://172.16.0.109:8081/repository/maven-snapshots/
REPOSITORY_ID_RELEASE=surpath-releases
REPOSITORY_URL_RELEASE=http://mvn.surpath-inc.net/repository/maven-releases/
TYPE=$1
GROUP_ID=$2
ARTIFACT_ID=$3
VERSION=$4
REPO=$5
if [ ! -n "$TYPE" ]; then
echo "You must specify the type"
exit 1
fi
TYPE=$(echo $TYPE | tr '[A-Z]' '[a-z]')
if [ ! -n "$GROUP_ID" ]; then
echo "You must specify the group id"
exit 1
fi
if [ ! -n "$ARTIFACT_ID" ]; then
echo "You must specify the artifact id"
exit 1
fi
if [ ! -n "$VERSION" ]; then
echo "You must specify the version"
exit 1
fi
if [[ -n "$REPO" ]] && [[ $REPO == "release" ]]; then
REPOSITORY_ID=$REPOSITORY_ID_RELEASE
REPOSITORY_URL=$REPOSITORY_URL_RELEASE
else
REPOSITORY_ID=$REPOSITORY_ID_SNAPSHOT
REPOSITORY_URL=$REPOSITORY_URL_SNAPSHOT
fi
OLD_IFS="$IFS"
IFS="."
arr=($GROUP_ID)
IFS="$OLD_IFS"
WORK_DIR=$LOCAL_REPO
for folder in ${arr[@]}
do
WORK_DIR=$WORK_DIR/$folder
done
WORK_DIR=$WORK_DIR/$ARTIFACT_ID
WORK_DIR=$WORK_DIR/$VERSION
FILE_NAME=$ARTIFACT_ID-$VERSION
COMMAND="mvn deploy:deploy-file"
COMMAND=$COMMAND" -DgroupId=$GROUP_ID -DartifactId=$ARTIFACT_ID -Dversion=$VERSION"
if [ $TYPE == "jar" ]; then
COMMAND=$COMMAND" -Dfile=$WORK_DIR/$FILE_NAME.jar"
COMMAND=$COMMAND" -DpomFile=$WORK_DIR/$FILE_NAME.pom"
COMMAND=$COMMAND" -Dsources=$WORK_DIR/$FILE_NAME-sources.jar"
else
COMMAND=$COMMAND" -Dfile=$WORK_DIR/$FILE_NAME.pom"
fi
COMMAND=$COMMAND" -Dpackaging=$TYPE"
COMMAND=$COMMAND" -DgeneratePom=false -DrepositoryId=$REPOSITORY_ID -Durl=$REPOSITORY_URL"
echo ">>> Start to deploy: $ARTIFACT_ID-$VERSION.$TYPE to repository: $REPOSITORY_ID $REPOSITORY_URL"
echo ">>> Execute $COMMAND"
$COMMAND