前端自动化部署
名词解释集成:在推送或者 merge 代码后自动进行构建打包交付:将上一步生成的代码包发布至测试、生产等环境需求在 git 代码仓库发生变化后,自动执行打包脚本,并且发布至服务器。解决的问题在之前每次开发完毕需要上线之前,需要手动执行 bash 命令打包,并且将打包后的代码人为的拖动至上传应用(FlileZilla Pro)。手动执行构建脚本消耗时间人力而拖动代码文件会存在拖拽错误,覆盖之前的其他
·
名词解释
- 集成:在推送或者 merge 代码后自动进行构建打包
- 交付:将上一步生成的代码包发布至测试、生产等环境
需求
在 git 代码仓库发生变化后,自动执行打包脚本,并且发布至服务器。
解决的问题
- 在之前每次开发完毕需要上线之前,需要手动执行 bash 命令打包,并且将打包后的代码人为的拖动至上传应用(FlileZilla Pro)。
- 手动执行构建脚本消耗时间人力
- 而拖动代码文件会存在拖拽错误,覆盖之前的其他项目代码等难以预料的问题
工具选择
- gitlab/github/gitee
- Jenkins(各种插件,前置 java 环境)
工具职责
- git 负责存储代码,利用平台提供的 webHook 功能去监听 push,merge 等事件,监听到这类事件之后,会给配置的 url 发送 post 消息
- Jenkins 负责接受到 post 消息后,执行构建脚本(构建环境需要选择 node):npm run build,生成构建后的代码之后通过 SSH 登录,然后去通过 FTP 上传至目标服务器(环境)
- 以 gitee 为例,当收到的数据当中的 tree_id 字段时,说明此时构建的是 tree_id 分支,然后根据测试分支,线上分支,去上传文件至不同的服务器
前端自动化部署方式
- 向上边说的那种前后端配合实现的,可定制流程的自动化部署方式(分支环境可控制)
- 在推送分支的时候进行的自动化打包部署:如SAE,gitHubhooks 等
- 也可以在本地写一个上传 OSS 的服务,在 run build 完毕的时候上传文件即可(前提是要有 FTP 相关的账号密码)
参考实践链接
Jenkins 安装
Jenkins 插件安装及应用
常见 linux命令
Jenkins 配置 SSH 链接
一个不错的实践
更多推荐
已为社区贡献1条内容
所有评论(0)