-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Closed
Description
功能
- 构建
- 支持 nodeinstall
- 支持语言层编译,如 typescript, babel
- 自定义构建,如静态文件编译
- 启动
构建
环境依赖 cnpm,cnpm 会根据配置自动安装 node 到应用包中(需要实现)。
应用添加 install-node 配置 node 版本,并添加 egg-scripts 依赖
{
"dependencies": {
"egg-scripts": "*"
},
"engines": {
"install-node": "6.9.1"
}
}构建顺序
- 下载应用代码
- 在应用代码执行
cnpm install --production - 执行
egg-scripts build- 预编译处理(ts,babel 等)
- 调用应用的 scripts.build(一般常用于处理静态文件构建)
- 修改 scripts.start/scripts.stop 指向 egg-scripts
启动
egg 构建出的应用包没有任何依赖,可直接部署
- 设置环境变量
PATH={app_root}/node_modules/.bin:$PATH - 启动
npm start或egg-scripts start
扩展
如果框架想提供部署功能,那么可以在框架层依赖 egg-scripts,这样应用就不需要添加了。但是层级比较深,可以在 postinstall 修改 ./node_modules/.bin/egg-scripts.
egg-scritps 主要提供 build 扩展,可以继承 egg-scritps 处理自定义逻辑。