aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'cmd')
-rw-r--r--cmd/www-go-proposal/main.go19
1 files changed, 16 insertions, 3 deletions
diff --git a/cmd/www-go-proposal/main.go b/cmd/www-go-proposal/main.go
index 2581186..c31da25 100644
--- a/cmd/www-go-proposal/main.go
+++ b/cmd/www-go-proposal/main.go
@@ -8,6 +8,7 @@ import (
"flag"
"log"
"strings"
+ "time"
"git.sr.ht/~shulhan/ciigo"
"git.sr.ht/~shulhan/pakakeh.go/lib/http"
@@ -35,19 +36,31 @@ func main() {
}
var serveOpts = ciigo.ServeOptions{
ServerOptions: http.ServerOptions{
- Memfs: memFS,
+ BasePath: `/proposal`,
+ Memfs: memFS,
},
}
+ var shutdownIdleDuration string
flag.BoolVar(&serveOpts.IsDevelopment, `dev`, false,
`Turn on development mode.`)
flag.StringVar(&serveOpts.Address, `http`, `127.0.0.1:10202`,
- `Set HTTP listen address`)
+ `Set HTTP listen address`)
+ flag.StringVar(&shutdownIdleDuration, `shutdown-idle`, ``,
+ `Set the duration to automatically shutdown the server when no new connections after a duration.`)
flag.Parse()
+ var err error
+ if shutdownIdleDuration != `` {
+ serveOpts.ShutdownIdleDuration, err = time.ParseDuration(shutdownIdleDuration)
+ if err != nil {
+ log.Fatalf(`invalid shutdown-idle value %s: %s`,
+ shutdownIdleDuration, err)
+ }
+ }
+
var cmd = strings.ToLower(flag.Arg(0))
- var err error
switch cmd {
case `embed`:
err = ciigo.GoEmbed(embedOpts)