############ # autdop 编译,部署脚本 ############ #!/bin/sh set -e APP=$1 ENV=$2 REMOTE_HOST=$3 PASSWORD=$4 # 时间戳 TIMESTAMP=`date '+%Y-%m-%d_%H-%M-%S'` if [ -z ${APP} ] || [ -z ${ENV} ] || [ -z ${REMOTE_HOST} ] || [ -z ${PASSWORD} ]; then echo 'error: sh build.sh ENV APP REMOTE_HOST PASSWORD' exit -1 fi DST_DIR='/home/reghao/tmp/autodop' if [ -d ${DST_DIR}/app ]; then rm -rf ${DST_DIR}/app/* rm -rf ${DST_DIR}/app.* else mkdir -p ${DST_DIR}/app fi # 编译打包应用 SRC_DIR='/home/reghao/code/aha/autodop' cd ${SRC_DIR} mvn clean package -P${ENV} cp ${APP}/target/${APP}-1.0.0.jar ${DST_DIR}/app/${APP}-1.0.0_${TIMESTAMP}.jar mvn clean # 拷贝运行脚本到远程主机 sshpass -p ${PASSWORD} scp run-jar.sh root@${REMOTE_HOST}:/opt/servers/jars/autodop cd ${DST_DIR}/app # 拷贝应用到远程主机 sshpass -p ${PASSWORD} scp ${APP}-1.0.0_${TIMESTAMP}.jar root@${REMOTE_HOST}:/opt/servers/jars/autodop/app sshpass -p ${PASSWORD} ssh root@${REMOTE_HOST} "source /etc/profile && sh /opt/servers/jars/autodop/run-jar.sh ${APP} ${TIMESTAMP}" #sshpass -p qUkTdHNv6_HC ssh root@s12.iquizoo.com -t 'cd /root; bash --login'