[jenkins]-Execute shell 在部署项目前先判断是否需要杀死jacoco进程

自己做个笔记 经常要用到,却经常找不到文件在哪要重新写一次

不做判断 进程不存在时 会kill 空 然后报错

#!/bin/bash
echo 1 
JacocoPid=`ssh 192.168.1.193 "ps -ef | grep  6301 |grep jacocoagent  |grep -v grep   |awk '{print \\$2}'"`

echo JacocoPid $JacocoPid

if [ "$JacocoPid" == '' ];then echo JacocoPid 不存在;else ssh 192.168.1.193  "kill -9 $JacocoPid";fi
ansible-playbook -i /etc/ansible/hosts  /srv/yaml/appoint-center.yml
echo 2
ansible -i /etc/ansible/hosts test-appoint_center -m shell -a " cd /srv/tomcat   && nohup java -javaagent:/srv/jacoco/lib/jacocoagent.jar=includes=*,output=tcpserver,append=true,destfile=/srv/tomcat/appointmentcenter-platform-test-jacoco.exec,port=6301,address=192.168.1.193  -jar appointmentcenter-platform-test.jar  > jacoco-appointmentcenter-platform-test.log &"
echo 3

[jenkins]-Execute shell 在部署项目前先判断是否需要杀死jacoco进程_第1张图片

1 jacoco 没有启动的情况下 拉起jacoco

[jenkins]-Execute shell 在部署项目前先判断是否需要杀死jacoco进程_第2张图片

2 jacoco已经启动的情况下 杀死jacoco 并重新启动

[jenkins]-Execute shell 在部署项目前先判断是否需要杀死jacoco进程_第3张图片

你可能感兴趣的:(jenkins)