| 34 | ) |
| 35 | |
| 36 | func main() { |
| 37 | app := cli.NewApp() |
| 38 | app.Name = "gin" |
| 39 | app.Usage = "A live reload utility for Go web applications." |
| 40 | app.Action = MainAction |
| 41 | app.Flags = []cli.Flag{ |
| 42 | cli.StringFlag{ |
| 43 | Name: "laddr,l", |
| 44 | Value: "", |
| 45 | EnvVar: "GIN_LADDR", |
| 46 | Usage: "listening address for the proxy server", |
| 47 | }, |
| 48 | cli.IntFlag{ |
| 49 | Name: "port,p", |
| 50 | Value: 3000, |
| 51 | EnvVar: "GIN_PORT", |
| 52 | Usage: "port for the proxy server", |
| 53 | }, |
| 54 | cli.IntFlag{ |
| 55 | Name: "appPort,a", |
| 56 | Value: 3001, |
| 57 | EnvVar: "BIN_APP_PORT", |
| 58 | Usage: "port for the Go web server", |
| 59 | }, |
| 60 | cli.StringFlag{ |
| 61 | Name: "bin,b", |
| 62 | Value: "gin-bin", |
| 63 | EnvVar: "GIN_BIN", |
| 64 | Usage: "name of generated binary file", |
| 65 | }, |
| 66 | cli.StringFlag{ |
| 67 | Name: "path,t", |
| 68 | Value: ".", |
| 69 | EnvVar: "GIN_PATH", |
| 70 | Usage: "Path to watch files from", |
| 71 | }, |
| 72 | cli.StringFlag{ |
| 73 | Name: "build,d", |
| 74 | Value: "", |
| 75 | EnvVar: "GIN_BUILD", |
| 76 | Usage: "Path to build files from (defaults to same value as --path)", |
| 77 | }, |
| 78 | cli.StringSliceFlag{ |
| 79 | Name: "excludeDir,x", |
| 80 | Value: &cli.StringSlice{}, |
| 81 | EnvVar: "GIN_EXCLUDE_DIR", |
| 82 | Usage: "Relative directories to exclude", |
| 83 | }, |
| 84 | cli.BoolFlag{ |
| 85 | Name: "immediate,i", |
| 86 | EnvVar: "GIN_IMMEDIATE", |
| 87 | Usage: "run the server immediately after it's built", |
| 88 | }, |
| 89 | cli.BoolFlag{ |
| 90 | Name: "all", |
| 91 | EnvVar: "GIN_ALL", |
| 92 | Usage: "reloads whenever any file changes, as opposed to reloading only on .go file change", |
| 93 | }, |