stop java应用:
#!/bin/sh
PID=$(cat /root/test/test.pid)
kill -9 $PID
start java应用:
#!/bin/sh
java -jar -Xms128m -Xmx256m thirdparty-test-0.0.1-SNAPSHOT.jar & #注意:必须有&让其后台执行,否则没有pid生成
echo $! > /root/test/test.pid # 将jar包启动对应的pid写入文件中,为停止时提供pid
指定jvm参数start java应用:
#!/bin/sh
java -jar -Xms2048m -Xmx2048m -Xmn1024m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC thirdparty-test-0.0.1-SNAPSHOT.jar --spring.profiles.active=prd,redisprd,dbprd &
echo $! > /root/security/security.pid
高端一点Jenkins执行脚本:
curl -X POST 'http://167.167.167.167:6060/publish/saveSnapshot?env=test'
cd /var/lib/jenkins/workspace/myapp-auth-test/auth
docker build -t 167.167.1.12:9876/myapp/myapp-auth-test:${BUILD_NUMBER} -f Dockerfile-test .
docker push 167.167.1.12:9876/myapp/myapp-auth-test:${BUILD_NUMBER}
docker rmi 167.167.1.12:9876/myapp/myapp-auth-test:${BUILD_NUMBER}
sed -i "s|image: 10.*$|image: 167.167.1.12:9876/myapp/myapp-auth-test:${BUILD_NUMBER}|" /root/myapp/myapp-auth-test.yaml
curl -X POST -H "content-type=form-data;charset=UTF-8" -F "content=$(cat /var/lib/jenkins/workspace/myapp-auth-test/gateway/src/config/auth-test.yml)" "http://11.167.19.17:8848/nacos/v1/cs/configs?dataId=auth-test.yml&group=DEFAULT_GROUP&username=nacos&password=nacos"
kubectl apply -f /root/myapp/myapp-auth-test.yaml
find /var/lib/jenkins/workspace/myapp-auth-test -name "target" | xargs rm -rf
curl -X POST 'http://167.167.167.167:6060/publish/saveRecord' --header 'Content-Type: application/json' --data "{\"env\":\"test\",\"model\":\"auth\",\"version\":${BUILD_NUMBER}}"