美文网首页
拉去gitlab的相关代码并且自动部署的脚本

拉去gitlab的相关代码并且自动部署的脚本

作者: IT男的假智慧 | 来源:发表于2020-04-02 08:54 被阅读0次

#!/bin/bash

#version: 1.0

#by: summer

giturl="http://git地址" #这里加git clone的地址

dirname=`echo "$giturl" |awk -F '/' '{print $NF}'|awk -F '.' '{print $1}'`

filename="$dirname.jar"

username="用户名" #这里加用户名

passwd="密码" #这里加密码

nowpath=`pwd`

#获取信息

#get_info(){

#read -p "please enter the giturl > " gurl

#giturl=$gurl

#read -p "please enter the gits username > " gname

#username=$gname

#read -p "please enter the gits passwd > " gpswd

#passwd=$gpswd

#dirname=`echo "$giturl" |awk -F '/' '{print $NF}'|awk -F '.' '{print $1}'`

#filename="$dirname.jar"

#}

git_pull(){

if [ ! -d $nowpath/$dirname ];then

/usr/bin/expect <<EOF

set timeout 30

spawn git clone $giturl

expect "Username for 'http://ip:9989':"

send "$username\n"

expect "Password for 'http://$username@ip:9989':"

send "$passwd\n"

expect eof

EOF

else

rm -rf ./$dirname

/usr/bin/expect <<EOF

set timeout 30

spawn git clone $giturl

expect "Username for 'http://ip:9989':"

send "$username\n"

expect "Password for 'http://$username@ip:9989':"

send "$passwd\n"

expect eof

EOF

fi

}

#maven构建

project_build(){

cd $nowpath/$dirname

mvn clean package -U -Dmaven.test.skip

if [ $? -eq 0 ];then

echo "Build Success!"

else

echo "Build Faild! Exiting..."

exit

fi

}

jar_push(){

if [ ! -d /home/$dirname ];then

mkdir /home/$dirname

fi

if [ -f /home/$dirname/$filename ];then

backdate=`date +%Y-%m-%d-%T`

mv /home/$dirname/$filename /home/$dirname/$filename.back.$backdate

fi

cp $nowpath/$dirname/target/$filename /home/$dirname/

ps aux|grep $filename|grep -v "grep" >/dev/null

if [ $? -eq 0 ];then

jpid=`ps aux |grep $filename |grep -v "grep"|awk '{print $2}'`

kill -9 $jpid

cd /home/$dirname/

nohup java -jar $filename >$filename.log 2>&1 &

else

cd /home/$dirname/

nohup java -jar $filename >$filename.log 2>&1 &

fi

}

#get_info

git_pull

project_build

jar_push

rm -rf $nowpath/$dirname

相关文章

网友评论

      本文标题:拉去gitlab的相关代码并且自动部署的脚本

      本文链接:https://www.haomeiwen.com/subject/wpetphtx.html