工做中遇到jenkins構建項目以後結合maven部署插件遠程部署到tomcat,tomcat沒有重啓,形成代碼沒有生效,須要手動進行重啓,一是太麻煩了,二是效率過低,本人就想jenkins能不能調用shell腳原本幫我實現重啓tomcat,實現自動重啓。結果是能夠的,如下是個人操做shell
從網站上下載代碼,http://sourceforge.net/projects/sshpass/ 下載sshpass 並安裝tomcat
tar
-zxvf sshpass-1.05.
tar
.gz
bash
cd
sshpass-1.05
app
.
/configure
ssh
make
&&
make
install
maven
以後咱們就準備一個shell腳本 restart_tomcat.sh
網站
咱們放在把這個shell腳本放在和jenkins 在一臺機器上 /root 目錄下.net
#!/bin/bash
export JAVA_HOME=/usr/local/jdk1.6
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
echo "======begin stop the tomcat======"
ps -ef | grep tomcat_vip2/ | grep -v grep | awk '{print $2}' | sed -e "s/^/kill -9 /g" | sh -
echo "======begin delete /usr/apps/vip2/ROOT======"
rm -rf /usr/apps/vip2/ROOT
echo "======begin starting the tomcat======"
/usr/local/tomcat_vip2/bin/startup.sh
echo "======end start the tomcat successed======"插件
以後我在jenkins的job配置以下:rest
Command : sshpass -p pasword ssh root@IP 'bash -x -s' < /root/restart_tomcat.sh
保存便可,構建以下:
至此成功結束。