1、新建任务

微信截图_20200703124604.png

 

2、源码管理配置

微信截图_20200703124644.png

微信截图_20200703124837.png

 

3、构建触发器配置

微信截图_20200703130847.png

 

4、构建配置

#修改环境变量
cd src/main/resources
sed -i 's/active: dev/active: pro/g' application.yml > application.yml.tmp

#开始打包
cd /var/lib/jenkins/workspace/my-pro-aag3-ssh
mvn clean install -Dmaven.test.skip=true

#修改war包名称
cd /var/lib/jenkins/workspace/my-pro-aag3-ssh/target
mv aag3.war ROOT.war

微信截图_20200704020132.png

#! /bin/sh

cd /home/tomcat-set/apache-tomcat-8.5.15-aag3/jenkins_upload/aag3/compile
#获取当前时间字符串并备份编译包
cur_date_time=$(date +%Y_%m_%d-%H-%m-%s)
cp ROOT.war ROOT-${cur_date_time}.war

#停止tomcat
name=apache-tomcat-8.5.15-aag3
#查找指定tomcat进程,排除grep进程,循环打印第二个字段
pidlist=`ps -ef|grep apache-tomcat-8.5.15-aag3|grep -v "grep" | awk '{print $2}'`
#杀掉指定进程pid
kill -9 $pidlist

#开始备份原程序包
mv /home/tomcat-set/apache-tomcat-8.5.15-aag3/webapps/ROOT /home/tomcat-set/apache-tomcat-8.5.15-aag3/jenkins_upload/aag3/backups/ROOT-${cur_date_time}
#删除指定war
rm -rf  /home/tomcat-set/apache-tomcat-8.5.15-aag3/webapps/ROOT.war
#拷贝编译war
cp /home/tomcat-set/apache-tomcat-8.5.15-aag3/jenkins_upload/aag3/compile/ROOT.war /home/tomcat-set/apache-tomcat-8.5.15-aag3/webapps

#开始启动tomcat
/home/tomcat-set/apache-tomcat-8.5.15-aag3/bin/startup.sh start

微信截图_20200704021006.png

微信截图_20200704021432.png

微信截图_20200704021442.png

如果jenkins部署操作的是本机很容易出现权限问题,因为运行的用户是jenkins:

 

权限容易出现问题:

1、创建目录权限问题

mkdir: cannot create directory ‘/usr/local/tomcat/jenkins_backup’: Permission denied

2.kill命令操作权限问题

/tmp/jenkins1685444028483596059.sh: line 27: kill: (1146) - Operation not permitted

3.rm等各种命令权限都会有问题

 

解决方案:让jenkins以root或对应用户执行

   1、修改配置文件

    vim /etc/sysconfig/jenkins

    JENKINS_USER="jenkins" 改为 JENKINS_USER="root" 

 

    2、修改Jenkins相关文件夹用户权限

    chown -R root:root /var/lib/jenkins

    chown -R root:root /var/cache/jenkins

    chown -R root:root /var/log/jenkins

 

    3.重启jenkis

    service jenkins restart