Jenkin自动部署
一、在系统管理 -> 插件管理中,安装[Publish over SSH]插件。然后点击一键安装,并重启Jenkins
二、系统管理 -> 系统设置中,设置需要发布代码的目标主机信息
Name填写发布代码的目标主机别名,用以标识区分。
Username填写发布代码的目标主机登录名。
Remote Directory是相对目录,远程传送的文件将会基于这个目录。
勾选[Use password authentication, or use a different key]并在[Passphrase / Password]填写登录密码
如果有多台可以点击添加按钮做相同操作。
三、系统管理 -> 全局工具配置中,
分别设置maven的配置文件路径和jdk的安装路径(前提需要在Jenkins主机上安装maven和jdk)
分别配置Git的执行路径和Maven的安装路径。
四、在主页面新建一个任务
填写相关信息如图:
如果源代码管理工具是git, 按照下面进行配置:
勾选git, 并在Repository URL填写git项目的https地址, 在[Credentials]配置git的账号密码
如果是svn,则按照下图配置:
勾选[Subversion], 在[Repository URL]填写SVN的地址, 在[Credentials]配置svn的账号密码
在[构建环境]中勾选[Delete workspace before build starts],
在[构建]中, 选择[调用顶层Maven目标], 选择Maven版本, 并在目标填写编译代码如下:
clean
install -DskipTests
继续选择[Send files or execute commands over SSH]
并在Name选择发布代码的目标主机别名,
在Source files输入编译后的目标文件路径(这个路径是相对于workspace路径的)
在Remove prefix输入需要删除掉的文件名前缀
在Remote directory输入远程主机上的待发生文件的保存路径(基于上面第二步设置的Remote Directory路径)
在Exec command输入shell脚本, 如下:
#!/bin/sh +x
. /etc/profile
tomcat_path="/usr/local/tomcat_9001"
source_path="/usr/local/jenkins-deploy"
cd ${tomcat_path}/bin/
sh ./shutdown.sh
sleep 10
rm -rf ${tomcat_path}/work/*
rm -rf ${tomcat_path}/temp/*
rm -rf ${tomcat_path}/logs/*
rm -rf ${tomcat_path}/webapps/*
cp ${source_path}/api.war ${tomcat_path}/webapps/ROOT.war
cd ${tomcat_path}/bin/
sh ./startup.sh
sleep 30
rm -rf ${source_path}
unset tomcat_path
unset source_path
点击【保存】
还没有评论,来说两句吧...