需求:前后端在一个应用包,前端基于node、使用gulp打包,后端使用maven打包;配置jenkins实现一键从svn拉取代码、打前端、封装后端、部署。
1、jenkins配置
jenkins的安装、配置,网上有很多相关指导,也不是本文的重点,飘过。
因为前端包部分需要在jenkins工作空间里面处理,所以我是使用linux主机自建jenkins环境,docker部署的jenkins不好处理,反正我之前是没在docker环境里处理好。
在jenkins“系统管理”-“系统设置”-“SSH Servers”里面增加两个server,一个是jenkins主机、一个是应用部署的主机,配置好账号、密码;
代码管理基于svn,配置好svn拉取最新源代码就好(url后面加@HEAD)。
勾选“Delete workspace before build starts”,彻底清理工作空间。
前端包处理脚本:
项目“构建环境”-“Send files or execute commands over SSH before the build starts”
选择jenkins主机,“Exec command”配置sudo sh /root/gulp.sh
上传jar包及部署脚本:
项目“构建环境”-“Send files or execute commands over SSH after the build runs”
选择应用部署主机,“Source files”配置xxxxproject/target/xxxx.jar
"Exec command"配置sh /xxxx/jenkins_auto_