没有运维。
前提
其实都隶属于同一个项目:
- 微信端
- PC 总后台,项目设置等(管理员)
- PC 数据后台,项目中的数据、统计等(所有人)。
有三台服务器:
- 测试服务器
- 演示服务器
- 正式服务器
每台服务器对应不同的域名,所以项目中请求的 URL 也会作出相应的更改。
项目架构:vue + webpack
目前解决办法
每个项目下都有三个文件:
在 config/prod.env.js 中,通过 process.env.NODE_ENV 来判断当前的环境来选择 API 接口地址:
const AUTH_API =
process.env.NODE_ENV === 'production:test' ? '"http://xxxtest.example.com/"'
: process.env.NODE_ENV === 'production:show' ? '"http://xxxshow.example.com/"'
: '"http://xxx.example.com/"'
每次部署都要跑一遍 3 个脚本,然后通过 scp 传到对应服务器的对应文件夹。但是 3 个项目都得跑一遍。
想法
使用 jenkins 进行部署,但是用了发现好像只是将执行脚本的环境将本地搬到了线上罢了。
而且,这样的话,还需要将 jenkins 所在的 docker 的 sshkey 添加到各个服务器上,才能成功 scp。
不知道还有没有其他好的办法。
并且,对于 chalk 的输出貌似不能正常显示。

说明
暂时不需要测试。