jekins脚本
prodsname=${JOB_NAME}
sname=base_api
echo "sname=${sname}"
echo "workspace=${WORKSPACE}"
APPHOST=10.70.27.15
#create dir structure firstly if not exists
ssh -i /root/.ssh/id_rsa root@${APPHOST} " mkdir -p /data/common_services/${sname}/bin; mkdir -p /data//common_services/${sname}/conf; mkdir -p /data//common_services/${sname}/data; mkdir -p /data//common_services/${sname}/log"
ssh -i /root/.ssh/id_rsa root@${APPHOST} "cd /data//common_services/${sname}/bin/; mv -f ${sname}.jar ${sname}.jar.bak "
scp -r -i /root/.ssh/id_rsa ${WORKSPACE}/target/${sname}.jar root@${APPHOST}:/data/common_services/${sname}/bin/
ssh -i /root/.ssh/id_rsa root@${APPHOST} "cd /data/common_services/${sname}/bin; ./start.sh ${sname}"
echo "offsite ${JOB_NAME} deployment done!
服务器的start.sh脚本
#!/bin/bash
# Usage:
# startSvc.sh servicename
SERVICENAME=$1
SVCHOME=/data/common_services/${SERVICENAME}/
JAVA=java
if [ "x${SERVICENAME}" == "x" ]; then
echo "must give service name"
exit 0
fi
P_ID=$(ps -ef | grep ${SVCHOME}/bin/${SERVICENAME}.jar | grep java | awk '{print $2}')
echo "service running pid = ${P_ID}"
if [ "x${P_ID}" != "x" ]; then
echo "stop running service:$1 whose pid=${P_ID} "
kill -9 ${P_ID}
sleep 2
fi
echo "start service ${SERVICENAME}.jar "
#nohup ${JAVA} -Xms512m -Xmx1024m -jar ${SVCHOME}/bin/${SERVICENAME}.jar > /dev/null 2>&1 &
nohup ${JAVA} -Xms512m -Xmx1024m -jar ${SVCHOME}/bin/${SERVICENAME}.jar --spring.config.location=../conf/ > /dev/null 2>&1 &
#nohup ${JAVA} -Xms512m -Xmx1024m -jar ${SVCHOME}/bin/${SERVICENAME}.jar --spring.config.location=../conf/ > ./log.out 2>&1 &
echo "start-up done!"