前端自动化部署解决方案

前端工程一般发布在静态服务器上即可,各云厂商的对象存储产品都会支持静态资源部署,aws的s3整套产品很成熟也非常完善,Ali的oos,腾讯的cos也有完整的sdk。
本篇文字主要简述了前端工程在对象存储服务的发布流程和最佳实践,欢迎讨论。

使用命令行发布

对象存储服务都有提供对应的控制台管理桶,同时也提供响应的API供后端业务调用。
aws-s3官方提供了命令行终端操作库可以方便在命令行发布我们的静态资源:https://aws.amazon.com/cn/cli/
我们可以这样发布:

$ aws s3 sync dist s3://mybucket/myfolder

腾讯的cos可以使用很轻量第三方库cos-manager发布资源: https://github.com/yansenlei/cos-manager

# 首次写入配置
$ cos-manager --id=AKIDxxx --key=xxx
# 上传指定目录
$ cos-manager --r=Region --b=Bucket-APPID --dir=dist
# 查看帮助信息
$ cos-manager -h

巧用 npm script

npm script 类似shell 的 exec,可以帮助你执行多个并行或顺序执行的命令,我们可以一次性执行删除本地dist资源->打包->发布
参考:
https://docs.npmjs.com/misc/scripts
http://www.ruanyifeng.com/blog/2016/10/npm_scripts.html

以上发布我们可以这样写:

{
  "script": {
    "build:deploy": "rm -rf dist/ && npm run build && cos-manager --r=Region --b=Bucket-APPID --dir=dist"
  }
}

一个命令,提包走人。(虽然走了有点慌...)

持续集成CI

持续集成是一种软件开发实践,每一次发布源码都会集成一次,每一次都会自动化的构建,这意味着也可以把上面的发布脚本在服务端跑起来,打包 测试 发布全部交给CI处理,目前主流的工具是 Travis CI,具体可以参照:http://efe.baidu.com/blog/front-end-continuous-integration-tools/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容