jenkins 部署脚本

本文详细介绍了如何利用Jenkins创建部署脚本,实现持续集成和自动化部署到Linux服务器的过程。内容涵盖了配置Jenkins服务器、安装必要插件、编写部署脚本以及设置触发机制,旨在帮助开发者提升部署效率。
摘要由CSDN通过智能技术生成


port=20000
#war包名称
name=$1
#war包要部署的地方
path=$2
#jenkins放war包的地方
path_w=$3
#pid名称
pid_name="${4}.pid"
pid="$(cat /var/run/"${pid_name}")"
#$(ps -ef | grep java | grep $name | awk '{print $2}')

echo "s1 = $name"
echo "s2 = $path"
echo "s3 = $path_w"

echo "pid = $pid"

#rm the war if exist
echo "$path/$name"
if [ -f "$path/$name" ];then
echo "delete the file $name"
rm -f  $path/$name
else
echo "the file $name is not exist"
fi

sleep 1s

#copy the war 
cp $path_w/$name $path/
echo "copy the file $name from $path_w to $path"

#shundow the process if exist
if [ $pid ];then

kill -9 $pid
echo "kill the process $name pid = $pid"
else
echo "process is not exist"
fi

sleep 1s
#start the application

#要切换到项目目录下才能在这里生成日志
cd $path

#防止被jenkins杀掉进程
BUILD_ID=dontKillMe

nohup java -server -Xms256m -Xmx512m -jar -Dserver.port=$port $name >> nohup.out 2>&1 &

sleep 1s

pid_new=$(ps -ef | grep java | grep $name | awk '{print $2}')

if [ $? -eq 0 ];then
echo "this application  $name is starting  pid_new = $pid_new and port = $port"
else 
echo "this application  $name  startup failure"
fi

echo $! > /var/run/$pid_name


echo "over"

#!/bin/bash

PID=$(cat /var/run/contract.pid)

kill -9 $PID

echo "this application been shutdown"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值