From b6cd237ed3c283865fc3eed607ee97db8d8abace Mon Sep 17 00:00:00 2001 From: Sasha Koshka Date: Sun, 8 Dec 2024 20:02:28 -0500 Subject: [PATCH] cmd/stepd: Serve a named directory Closes #8 --- cmd/stepd/main.go | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/cmd/stepd/main.go b/cmd/stepd/main.go index d904045..0fe8376 100644 --- a/cmd/stepd/main.go +++ b/cmd/stepd/main.go @@ -41,15 +41,22 @@ func main () { flagErrorDocument, flagDirectories, cli.NewHelp()) + cmd.Syntax = "[OPTIONS]... [DIRECTORY]" cmd.ParseOrExit(os.Args) - if len(cmd.Args) > 0 { - cmd.Usage() - os.Exit(1) - } log.Println(`==========| STEP |===========`) log.Println(`Scriptable Template Processor`) log.Println(`... initializing`) + + // the single argument is for the directory to serve. we actually cd + // there. + if len(cmd.Args) == 1 { + err := os.Chdir(cmd.Args[0]) + if err != nil { log.Fatalln("XXX", err) } + } else if len(cmd.Args) > 1 { + cmd.Usage() + os.Exit(1) + } // set up the environment environment := step.Environment { } @@ -97,7 +104,7 @@ func main () { log.Printf("(i) listening on %s\n", httpServer.Addr) if err := manager.Run(ctx); err != nil && !errors.Is(err, context.Canceled) { - log.Fatalln(err) + log.Fatalln("XXX", err) } }