From 485aa55585cfc98032151f78f5ca56ddd04e8d67 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Wed, 8 Dec 2021 18:53:43 +0100 Subject: [PATCH] Add --help and --version flags --- README.md | 2 +- main.go | 29 +++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 77fe0b96eb78e3d6ccd4470e0d64714808a60efd..68b6bfe69402c6b4e482c3fdf78e81158dc1702b 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Soft Serve Build Status

-A tasty, self-hosted Git server for the command line. 🍦 +A tasty, self-hostable Git server for the command line. 🍦 Soft Serve screencast diff --git a/main.go b/main.go index f6052c285da945e926d99b911beb1fdf4799118a..b9a702bc723f77557b4be84e34e43597114f52f9 100644 --- a/main.go +++ b/main.go @@ -1,13 +1,42 @@ package main import ( + "flag" + "fmt" "log" + "os" "github.com/charmbracelet/soft/config" "github.com/charmbracelet/soft/server" ) +var ( + Version = "" + CommitSHA = "" + + version = flag.Bool("version", false, "display version") +) + func main() { + flag.Parse() + + if *version { + if len(CommitSHA) > 7 { + CommitSHA = CommitSHA[:7] + } + if Version == "" { + Version = "(built from source)" + } + + fmt.Printf("Soft Serve %s", Version) + if len(CommitSHA) > 0 { + fmt.Printf(" (%s)", CommitSHA) + } + + fmt.Println() + os.Exit(0) + } + cfg := config.DefaultConfig() s := server.NewServer(cfg) log.Printf("Starting SSH server on %s:%d\n", cfg.Host, cfg.Port)