From 45c70384ea0a27a2269ebb18e96d0d63337da456 Mon Sep 17 00:00:00 2001 From: pancsta <155631569+pancsta@users.noreply.github.com> Date: Fri, 1 Mar 2024 12:41:13 +0100 Subject: [PATCH] feat: add version param (#23) --- tools/am-dbg/debugger/rpc.go | 1 + tools/am-dbg/main.go | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/tools/am-dbg/debugger/rpc.go b/tools/am-dbg/debugger/rpc.go index f1c1bfa..709faaa 100644 --- a/tools/am-dbg/debugger/rpc.go +++ b/tools/am-dbg/debugger/rpc.go @@ -36,6 +36,7 @@ func StartRCP(rcvr *RPCServer) { l, err := net.Listen("tcp", url) if err != nil { rcvr.Mach.AddErr(err) + // TODO nice err msg panic(err) } log.Println("RPC server started at", url) diff --git a/tools/am-dbg/main.go b/tools/am-dbg/main.go index 1bad233..6bad89e 100644 --- a/tools/am-dbg/main.go +++ b/tools/am-dbg/main.go @@ -5,6 +5,7 @@ import ( "fmt" "log" "os" + "runtime/debug" "time" "github.com/spf13/cobra" @@ -22,6 +23,7 @@ const ( cliParamServerURL string = "server-url" cliParamAmDbgURL string = "am-dbg-url" cliParamEnableMouse string = "enable-mouse" + cliParamVersion string = "version" ) func main() { @@ -50,11 +52,17 @@ func getRootCmd() *cobra.Command { "Debug this instance of am-dbg with another one") rootCmd.Flags().Bool(cliParamEnableMouse, false, "Enable mouse support") + rootCmd.Flags().Bool(cliParamVersion, false, + "Print version and exit") return rootCmd } func cliRun(cmd *cobra.Command, _ []string) { // params + version, err := cmd.Flags().GetBool(cliParamVersion) + if err != nil { + panic(err) + } logFile := cmd.Flag(cliParamLogFile).Value.String() logLevelInt, err := cmd.Flags().GetInt(cliParamLogLevel) if err != nil { @@ -68,6 +76,15 @@ func cliRun(cmd *cobra.Command, _ []string) { panic(err) } + if version { + build, ok := debug.ReadBuildInfo() + if !ok { + panic("No build info available") + } + fmt.Println(build.Main.Version) + os.Exit(0) + } + // file logging if logLevel > 0 && logFile != "" { _ = os.Remove(logFile)