项目中gulp shark-automation编译,jenkins测试服开发服上线

来源:互联网 发布:吕思勉 知乎 编辑:程序博客网 时间:2024/06/13 12:37

gulp编译过程:


1.clean, 删掉scss生成cssftl生成html时,产生的临时文件夹

2.build-java,帮后端mvn compile(自己写的java,依赖的java库)。注明:招财是后端拉前端代码,没有这一步。渠道分销管理后台有这一步。

3. sass-preprocessScss编译,预处理。  webpack-server,打包Js

4.userefcss合并,js合并

5. imagemin图片压缩,

6.revision-image,图片加md5

7. revreplace-css/js根据生成的键值对(新旧名字Map),将css和js中引用的图片路径替换

8. revision-css/jsCss加md5后缀,js加md5后缀

9.revreplace-html/ftl,替换html和ftl中对应静态资源路径.

10. copy-build最终拷贝。构建好的资源拷贝进最终的构建目录有一个build文件夹,包含一个static(给cdn),一个app(给tomcat或python)。

 

shark-automation流程(整合了gulp和webpack):

执行gulp,webpack编译过程后,

source-gitpull代码,build,生成htmlapp和静态资源包static,分别push到对应的test-git。

如果静态资源要放在nos上,则静态资源会直接被上传到Nos。否则,如果放在mimg上,则在发布机上rsync。

备注:shark-automation优先级配置:





jenkins流程:

配置任务,执行脚本。可以执行关联任务,先编译,后面自动部署。

上线流程:3个分支,temp,dev,master,合分支到dev,测试完成后,最后测试服上测试下,然后合并到master,上线上服。

发布机路程:从git-testpull代码,app中的rsynctomcatcontext指定的位置。static中的rsync到目标服务器(如mimg


备注:

本地代码和gitlab代码之间怎么建立联系?

本地代码推到gitlab-源码库,执行负责测试服的jenkins任务【把代码拉到gitlab-test库,然后在测试服对应的编译机上(提前用脚本安装shark-automation),编译代码】,这样就编译好,而且可以让后端拉代码了。gitlab-online库也是一样的,执行负责线上服的jenkins任务。

前后端代码整合到一起上线?

前端代码编译好放到对应gitlab仓库后,后端执行编译部署脚本拉前端代码,整合资源,然后在线上发布机上,拉代码到tomcatcontext指定目录,在tomcat上启动服务,就上线完成了。



原创粉丝点击