update bee pack add custom build args

This commit is contained in:
slene 2013-12-23 16:45:20 +08:00
parent 723ddb4060
commit 743c86099d
1 changed files with 22 additions and 10 deletions

14
pack.go
View File

@ -43,6 +43,7 @@ compress an beego project
-p app path. default is current path
-b build specify platform app. default true
-ba additional args of go build
-o compressed file output dir. default use current path
-f format. [ tar.gz / zip ]. default tar.gz. note: zip doesn't support embed symlink, skip it
-exp path exclude prefix
@ -63,6 +64,7 @@ var (
fsym bool
ssym bool
build bool
buildArgs string
verbose bool
format string
)
@ -74,6 +76,7 @@ func init() {
fs.StringVar(&excludeS, "exs", ".go:.DS_Store:.tmp", "")
fs.StringVar(&outputP, "o", "", "")
fs.BoolVar(&build, "b", true, "")
fs.StringVar(&buildArgs, "ba", "", "")
fs.BoolVar(&fsym, "fs", false, "")
fs.BoolVar(&ssym, "ss", false, "")
fs.BoolVar(&verbose, "v", false, "")
@ -477,7 +480,16 @@ func packApp(cmd *Command, args []string) {
binPath += ".exe"
}
execmd := exec.Command(gobin, "build", "-o", binPath)
args := []string{"build", "-o", binPath}
if len(buildArgs) > 0 {
args = append(args, strings.Fields(buildArgs)...)
}
if verbose {
fmt.Println(gobin, " ", strings.Join(args, " "))
}
execmd := exec.Command(gobin, args...)
execmd.Stdout = os.Stdout
execmd.Stderr = os.Stderr
execmd.Dir = thePath