加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

deploy

发布时间:2020-12-14 04:23:12 所属栏目:大数据 来源:网络整理
导读:#!/usr/bin/env bash # pid file PID_FILE_NAME="pid_file" # file to upload EXECUTABLE_JAR_NAME="dfb_console.jar" TMP_EXECUTABLE_JAR_NAME=${EXECUTABLE_JAR_NAME}".tmp" EXECUTABLE_JAR_PATH="./target/${EXECUTABLE_JAR_NAME}" DEPLOY_SCRIPT="deploy
#!/usr/bin/env bash

# pid file
PID_FILE_NAME="pid_file"

# file to upload
EXECUTABLE_JAR_NAME="dfb_console.jar"
TMP_EXECUTABLE_JAR_NAME=${EXECUTABLE_JAR_NAME}".tmp"
EXECUTABLE_JAR_PATH="./target/${EXECUTABLE_JAR_NAME}"

DEPLOY_SCRIPT="deploy.sh"
START_FUNC_NAME="start"

#env,ssh remote,work dir


# ssh remote
ENV_TEST="test"
SSH_HOST_TEST="[email?protected]"WORK_DIR_TEST="/root/dfb_console/"PORT_TEST="22"# log filedeclare LOG_FILESNOHUP_LOG="nohup.out"LOG_BACKUP_FOLDER="logs/"# generator tablesfunction generate() { cd generator java -classpath jooq-3.9.1.jar:jooq-meta-3.9.1.jar:jooq-codegen-3.9.1.jar:mysql-connector-java-5.1.41.jar:. org.jooq.util.GenerationTool mysql.xml}function cdToWorkDir() { work_dir=`dirname $0` cd ${work_dir}}# backup logsfunction backupLog() { if [ ! -d "${LOG_BACKUP_FOLDER}" ]; then mkdir ${LOG_BACKUP_FOLDER} fi if [ -f "${NOHUP_LOG}" ]; then time=`date +%Y%m%d%H%M%S` cp ${NOHUP_LOG} ${LOG_BACKUP_FOLDER}${NOHUP_LOG}.${time}.log fi}# restartfunction restart() { #JAVA_HOME=/home/douqu/jdk1.8.0_181 #export JAVA_HOME #PATH=$JAVA_HOME/bin:$PATH #export PATH # kill if [ -f "${PID_FILE_NAME}" ]; then pid=$(cat ${PID_FILE_NAME}) kill -9 ${pid} fi # backup log backupLog # run nohup java -server -Xmx1g -Xms1g -Xmn256m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:ParallelGCThreads=6 -XX:ParallelCMSThreads=6 -XX:-OmitStackTraceInFastThrow -jar ${EXECUTABLE_JAR_NAME} > ${NOHUP_LOG} 2>&1 & echo $! > ${PID_FILE_NAME}}# startfunction start() { #JAVA_HOME=/home/douqu/jdk1.8.0_181 #export JAVA_HOME #PATH=$JAVA_HOME/bin:$PATH #export PATH cdToWorkDir # kill if [ -f "${PID_FILE_NAME}" ]; then pid=$(cat ${PID_FILE_NAME}) kill -9 ${pid} fi # backup log backupLog rm ${EXECUTABLE_JAR_NAME} mv ${TMP_EXECUTABLE_JAR_NAME} ${EXECUTABLE_JAR_NAME} # run nohup java -server -Xmx1g -Xms1g -Xmn256m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:ParallelGCThreads=6 -XX:ParallelCMSThreads=6 -XX:-OmitStackTraceInFastThrow -jar ${EXECUTABLE_JAR_NAME} > ${NOHUP_LOG} 2>&1 & echo $! > ${PID_FILE_NAME}}function upload() { # upload jar # rename to *.jar.bak scp -P $2 ${EXECUTABLE_JAR_PATH} $1:$3${TMP_EXECUTABLE_JAR_NAME} ret=$? if [[ ${ret} -ne 0 ]] ; then echo ‘Failed to scp jar‘ return 1 fi # upload script scp -P $2 ${DEPLOY_SCRIPT} $1:$3 ret=$? if [[ ${ret} -ne 0 ]] ; then echo ‘Failed to scp script‘ return 1 fi # if ssh $1 "test ! -e $2${DEPLOY_SCRIPT}"; then # scp ${DEPLOY_SCRIPT} $1:$2 # fi}function deploy() { #rm -rf /target # package echo "*******Start to package*******" ret=$? if [[ ${ret} -ne 0 ]] ; then echo ‘Failed to package‘ exit ${ret} fi if [ "$1" = "${ENV_TEST}" ]; then mvn clean package -Dmaven.test.skip=true -Ptest SSH_HOST=${SSH_HOST_TEST} WORK_DIR=${WORK_DIR_TEST} PORT=${PORT_TEST} elif [ "$1" = "${ENV_DEV}" ]; then mvn clean package -Dmaven.test.skip=true -Pdev SSH_HOST=${SSH_HOST_DEV} WORK_DIR=${WORK_DIR_DEV} PORT=${PORT_DEV} else # TODO: local echo "Unknown env: $1" exit fi # upload jar and deploy.sh echo "*******Start to upload*******" upload ${SSH_HOST} ${PORT} ${WORK_DIR} ret=$? if [[ ${ret} -ne 0 ]] ; then echo ‘Failed to upload files‘ exit ${ret} fi # run echo "*******Start to call remote start function*******" ssh ${SSH_HOST} -p ${PORT} "bash ${WORK_DIR}${DEPLOY_SCRIPT} ${START_FUNC_NAME}" mvn clean echo "*******Done*******"}if [ "$1" = "${START_FUNC_NAME}" ]; then startelif [ "$1" = "model" ]; then generateelif [ "$1" = "restart" ]; then restartelif [ "$1" = "${ENV_TEST}" ]; then deploy $1else echo "miss argument!"fi

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读