summaryrefslogtreecommitdiff
path: root/server.go
diff options
context:
space:
mode:
authorache <ache@ache.one>2019-02-12 16:42:31 +0100
committerache <ache@ache.one>2019-02-12 16:42:31 +0100
commit811517a22bc9bd02c6052cf2618770fef41efed8 (patch)
treebf976f4a16c8b104ca641794b8fec0e896027287 /server.go
parentArg management (diff)
Init dir args option
Diffstat (limited to 'server.go')
-rw-r--r--server.go36
1 files changed, 30 insertions, 6 deletions
diff --git a/server.go b/server.go
index b06692e..c38d216 100644
--- a/server.go
+++ b/server.go
@@ -103,22 +103,46 @@ func handleMethod( w http.ResponseWriter, r *http.Request) {
func main() {
var dir string
+ var help, version bool
+
+ helpString := `This is the help`
+ versionString := "0.0.0"
const (
- defaultDir = "."
- usageDir = "the directory to serve"
+ defaultDir = "."
+ usageDir = "the directory to serve"
+ usageHelp = "show some help"
+ usageVersion = "show the version"
)
flag.StringVar(&dir, "directory", defaultDir, usageDir)
flag.StringVar(&dir, "d", defaultDir, usageDir+" (shorthand)")
+ flag.BoolVar(&help, "help", false, usageHelp)
+ flag.BoolVar(&help, "h", false, usageHelp+" (shorthand)")
+ flag.BoolVar(&version, "version", false, usageVersion)
+ flag.BoolVar(&version, "v", false, usageVersion+" (shorthand)")
- flag.Parse()
+ flag.Parse()
- if dir == "" {
- dir = defaultDir
- }
+ if dir == "" {
+ dir = defaultDir
+ }
+
+ if help {
+ fmt.Println(helpString)
+ return
+ }
+ if version {
+ fmt.Printf("davy %s\n", versionString)
+ return
+ }
tmpl = template.Must(template.ParseFiles("dir.html"))
+ if err := os.Chdir(dir) ; err != nil {
+ fmt.Println("Error with directory [" + dir + "]")
+ return
+ }
+
fmt.Println("Launch server")
http.HandleFunc("/", handleMethod)
log.Fatal(http.ListenAndServe(":8080", nil))