Spring boot 使用svn 自动化发布


首先在安装好svn,创建好仓库,在文件夹hooks 中拷贝 post-commit

在post-commit中末尾增加
#!/bin/sh
/home/svn/repository/hooks/update.sh
其中的jar 放在目录/data/software/dapp/dapp/
首先初始状态情况下需要把打包好的jar包解压,上传BOOT-INF,META-INF,org 等文件夹到svn目录上,再把它checkout 到data/software/dapp/dapp/class
在该目录下新建update.sh内容如下:
#!/bin/sh
export LANG=en_US.utf8
SVN_PATH=/usr/bin/svn
wallet_PATH=/data/software/dapp/dapp
$SVN_PATH update $wallet_PATH --username xxx --password xxx --no-auth-cache
echo "update"
sudo /data/shell/dapp/dapp_jar.sh
sudo /data/shell/dapp/dapp.sh

其中dapp_jar.sh为打包jar 命令内容如下:

#!/bin/sh
dapp_path="/data/software/dapp/dapp/"
d=`date "+%Y-%m-%d_%H_%M_%S"`
if [ ! -f "$dapp_path/dapp.jar" ];then
echo "文件不存在"
else
mv $dapp_path/dapp.jar $dapp_path/dapp_$d.jar
fi
export JAVA_HOME=/opt/java/jdk1.8.0_181
PATH=$PATH:$JAVA_HOME/bin
$JAVA_HOME/bin/jar cvf0m $dapp_path/dapp.jar $dapp_path/classes/META-INF/MANIFEST.MF -C $dapp_path/classes/ .

chmod 776 $dapp_path/dapp.jar

dapp.sh是启动关闭jar的命令:
#! /bin/sh
#defined
ID=`ps -ef|grep dapp.jar|awk '{print $2}'`
JAVA_OPTS="-server -showversion -Xms512m -Xmx512m -Xmn200M -XX:PermSize=128m -XX:MaxPermSize=128m "
echo $ID
echo "..............."
kill -9 $ID
echo "kill $ID done"
echo "..............."
export JAVA_HOME=/opt/java/jdk1.8.0_181
PATH=$PATH:$JAVA_HOME/bin
nohup $JAVA_HOME/bin/java $JAVA_OPTS -Dspring.profiles.active=test -jar /data/software/dapp/dapp/dapp.jar >/data/log/dapp/dapp-out.log 2>&1 &
echo "start dapp end..."

通过上述命令就可以自动化部署,只需要在windows 上更新class文件即可


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM