-
Notifications
You must be signed in to change notification settings - Fork 8
/
build.sh
82 lines (72 loc) · 1.68 KB
/
build.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#!/bin/bash
# 项目代码编译脚本
# 使用方法
# sh build.sh dev ./ ./output
#cd `dirname $0`
echo " dev 开发模式(默认)"
echo " pro 生产模式"
echo "eg: sh build.sh dev"
DEPLOY=dev
# 项目根目录
ROOTPATH="./app/"
# 代码输出目录
DEST="../output"
# 配置文件
FIS_CONF="fis-conf.js"
if [ $# -eq 1 ]; then
DEPLOY=$1
fi
#if [ $# -eq 2 ]; then
# DEPLOY=$1
# ROOTPATH=$2
#fi
#if [ $# -eq 3 ]; then
# DEPLOY=$1
# ROOTPATH=$2
# DEST=$3
#fi
#if [ $# -lt = 1 ]; then
# DEPLOY=dev
#fi
FIS_OPTION=""
FIS="fis"
NODE_ENV="development"
case $DEPLOY in
dev)
FIS_OPTION="--watch --clean --live --pack"
;;
test)
FIS_OPTION="--clean --pack --md5"
;;
pro)
FIS_OPTION="--clean --optimize --pack --md5 --domains"
NODE_ENV="production"
DEST="../release"
;;
debug-fis)
# 调试fis核心用
# 结合 " node-inspector & " 使用
FIS="node --debug-brk /usr/local/bin/fis"
FIS_OPTION="--watch --clean --live --pack --domains"
;;
*)
echo "这什么参数? 请输入 dev 或者 pro"
exit
;;
esac
ROOTPATH=$(cd $ROOTPATH; pwd)
cd $ROOTPATH
echo $DEST
mkdir -p $DEST
DEST=$(cd $DEST; pwd)
echo
echo "当前项目目录:${ROOTPATH}"
echo "输出目录:${DEST}"
echo
echo ""
echo "开启 fis 编译 ${DEPLOY}"
FIS_COMMAND="$FIS release $FIS_OPTION --root $ROOTPATH --dest $DEST --file $ROOTPATH/$FIS_CONF"
echo $FIS_COMMAND
NODE_ENV=$NODE_ENV $FIS_COMMAND
echo ""
echo "结束"