jenkis部署git前置条件
1.CentOs7安装maven
下载:wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
解压:tar -xf apache-maven-3.6.3-bin.tar.gz
环境变量:vim /etc/profile
export PATH=$PATH:/home/xxx/maven-3.6.3/bin
下图是环境变量配置
加载变量:source /etc/profile
验证maven:which mvn
2.CentOs7安装git
yum install git
git --version
正片:jenkis部署git
必备插件:Maven IntegrationVersion、GitLab、GitLab API Plugin**
1.插件安装
2.关联maven、git、jdk
3.新建任务项目
General
源码管理
#表示有多个子项目时只发布xxx
clean install -pl xxx -am -amd -Pdev -Dmaven.test.skip=true
这个shell是个人写得一个打包发布新版本的流程,仅供参考。
jenkins拉取完git代码后会运行此脚本。
#!/bin/sh
#tomcat目录
tomcat_home=/tomcat/apache-tomcat-9.0.22
#项目名字
project_name=ROOT
#jenkins项目路径
jenkins_project_path=/var/lib/jenkins/workspace/Root/target/Root.war
#配置文件:application存放路径
bak_home=$tomcat_home/bak
#当前时间
now=$(date +"%Y%m%d%H%M%S")
#关闭tomcat并杀死进程
$tomcat_home/bin/shutdown.sh
pid=`ps -ef | grep apache-tomcat-9.0.22 | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
kill -9 $pid
fi
#防止jenkins构建完后杀死tomcat进程
export BUILD_ID=dontKillMe
sleep 5
echo "关闭tomcat"
#如果配置文件备份目录不存在,创建备份
if [ ! -d $bak_home ];then
mkdir -p $bak_home
fi
echo "创建配置文件备份目录"
#备份项目旧版本并删除
cd $tomcat_home/webapps
mv $project_name $bak_home/$project_name$now
rm -rf $project_name
echo "备份项目旧版本并删除"
#复制jenkins打包好的目录到tomcat
cp -rf $jenkins_project_path $project_name".war"
echo "把新项目复制过来"
#解压war包,并替换配置文件
unzip $project_name".war" -d $project_name
cp -rf $tomcat_home/bak/application.yml $tomcat_home/webapps/$project_name/WEB-INF/classes/application.yml
echo "覆盖配置文件"
#删除war包,避免配置文件更改导致版本不一致
rm -rf $project_name".war"
#启动项目
$tomcat_home/bin/startup.sh
echo "启动tomcat"