1.
代码结构说明
代码拉取后分为两个目录,分别为backend和frontend
Backend为后端jar包代码,frontend为vue前端代码,两者需要使用不同的项目配置进行打包。
内部项目以git进行代码管理,以下配置都以git为基础进行说明,若是使用SVN等代码管控工具的请以具体的实际情况安装不同的插件进行使用,具体方式可网上查找。
主要区别在拉取代码的方式,打包和部署方式相。
打包所使用的git,svn,maven,nodeJS等配置不在这里赘述,网上有详细帖子说明如何部署。
2.
backend配置说明
2.1创建项目
登录jenkins后点击左侧列表的新建Item
因Backend是需要打包为jar包后才可进行部署的,所以选择构建maven项目
2.2源码管理设置
创建任务后,选择源码管理工具
若没有此类选项,则是没有安装相关的插件,请根据以下方试安装后再进行任务配置
因jenkins版本不同,安装的插件名称也不一致,具体请网上查找
安装完成后继续任务配置,点击选择git
若是地址有误,或是账号信息误,不能通过校验会有提示
需要调整到没有红色提示时,才表示配置正确,是可以正常使用的
2.3构建触发器配置
选择配置构建任务的时机,可以不用配置,不配置时需要手动点击任务进行更新部署
常用是定时更新部署
此配置的是定时在每天的8点,10点,12点,16点,18点执行任务,无需人工操作
2.4Build打包
Goals and options 默认输入clean install
以下请注意:
请点击高级
若是想把代码拉取到指定的目录统一管理,请一定要勾选使用自定义的工作空间
否则jenkins会默认把代码拉取到根目录,不方便管理或是后期的维护
在目录中输入要存放的目录即可(此外的目录指的是jenkins所在的服务器下的目录地址)
/home/jenkins_code/eipsaas_backend
如上地址,代码拉取到/home/jenkins_code目录中,并把当前的项目代码都放到eipsaas_backend文件夹中
可以根据项目的具体情况进行命令来区分管理
2.5打包setting文件设置
上图两个配置都选择使用默认配置的setting文件
默认配置如下图路径
确保文件是在服务器上是存在的
Setting在代码目录中的backend\tools\maven目录中
打开此文件
默认是把打包所需要的依赖放到windows目录结构中,此外需要上地址做下修改,放到服务上的指定目录中,如
2.6打包调试
到此处,打包的配置已经完成,可以先点击保存,进行打包调试
回到任务列表,点击任务启动按钮
启动后,左侧会有进度条显示当前进度
点击下拉可以查看当时构建的详细信息
变更记录:显示当前构建有哪些更新内容,以git上的提交日志为准
控制台输出:显示当前构建过程中的详细日志信息,调试的主要信息来源
构建完成只有显示是绿色的表示构建成功,没有异常,若是显示的其它颜色,请根据在构建过程中的异常信息进行调试。
2.7构建完成后操作
服务器地址需要提前配置,在这里是直接选用
以下是服务器信息配置
信息输入完后点击高级
信息配置后点击Test Configuration按钮,当出现Success时表明连接成功,可以进行部署
注意:此外的账号最好是有在服务器有一定的操作权限,如文件夹的创建,编辑等
2.8部署文件
若是在更新部署文件当需要删除某些文件,可以如下执行命令
新版本在部署的时分类jar包和lib文件夹
因此在部署时,需要先清掉lib中的内容,重新部署
点击add server可继续添加构建后的任务
第
2步配置的一定是相对路径,不能是绝对路径,此路径的构成是上面配置的使用自定义空间的路径+此处的路径,切记一定是相对路径
第4步的路径也是相对路径,路径使用的是上面服务器信息下配置的根目录+此处的路径地址,如之前配置的根路径是/home 加上此处后实际路径应该是/home/hotent/...
如部署的路径是在/home/hotent/eipsass,此处第4步的路径地址应该是填写hotent/eipsaas
以上两步一定要注意
若是在部署时文件不成功,没有替换到,请打开以下配置
此配置勾选后,会详细的把每个文件复制到的路径在控制台输出日志中显示出来,可以根据输出的日志查找是哪里路径有异常,进行调试修改
Jar包部署,与lib文件替换大体一致
当jar包更新完后,需要添加上启动命令
cd /home/hotent/
#在部署的目录下执行命令
ps -ef| grep soffice | grep -E '2005' | grep -v grep | awk '{print $2}'|xargs kill -9
#若是没有开启附件预览,此行命令请删掉--此处配置只指对8的版本
#在部署的.uat文件中若是下图配置有启动,根据加上此行命令,作用是在启动之前先结束掉office插件的端口,以防在启动时因端口被占用启动失败
source /etc/profile
#刷新配置
chmod 777 eip.sh
#启动授权
BUILD_ID=dontKillMe
nohup bash eip.sh restart
#启动jar包
微服务相同原理,根据不同的服务进行配置
点击构建,在部署环境查看构建完成后,是否启动成功
3.
Frontend配置说明
3.1创建项目
前端打包方式与后端不用,选用Freestyle project的任务类型
3.2
设置自定义空间
勾选使用自定义工作空间,目录配置方式与backend端相同
3.3
源码管理
参考backend配置
3.4
构建触发器
参考backend配置
3.5
构建
构建步骤中选择Execute shell
输入构建命令,可使用npm或是yarn命令,请根据当前环境的具体情况使用,不影响环境部署
打包命令配置完成后,可先进行构建,验证打包是否成功,当显示为绿色通过后,表示打包是正常可用的,可以进行构建后的配置
3.6构建后操作
与backend配置相同,选择ssh配置
cd /home/eipsaas/tomcat/webapps/front/
rm -rf *
cd /home/eipsaas/tomcat/webapps/mvue/
rm -rf *
cd /home/eipsaas/tomcat/webapps/mobile/
rm -rf *
此处根据实际的部署路径进行修改
在前端文件部署之前,请清先清文件中的旧文件,尽量不要进行覆盖,覆盖有可能会导致更新不彻底
3.7替换更新文件
以下更新以tomcat举例说明
前端部署时需要使用SSO文件确定访问的端口等信息,在使用jenkins时,会把打包的文件全部覆盖过去,因此需要提前配置好SSO,放到一个文件夹中,以做备用,当打包好的文件更新完后,再把调整好的SSO文件覆盖到前端文件目录中。
与backend配置相同,可进行参考