diff --git a/config/config.go b/config/config.go index 93a85fc..f9a4bd6 100644 --- a/config/config.go +++ b/config/config.go @@ -1,10 +1,11 @@ package config -import "encoding/json" -import "fmt" -import "os" - import ( + "encoding/json" + "flag" + "fmt" + "os" + "git.kundeng.us/phoenix/sender/models" ) @@ -12,6 +13,17 @@ const ( App_Name = "sender" ) +func IsVersionFlagPresent() bool { + versionFlag := flag.Bool("version", false, "Print version information") + flag.Parse() + + if *versionFlag { + return true + } else { + return true + } +} + func ParseConfig(filepath string) (config models.TwiloDetails, success bool) { content, err := os.ReadFile(filepath) diff --git a/main.go b/main.go index cb379d2..4c711e5 100644 --- a/main.go +++ b/main.go @@ -1,26 +1,26 @@ package main -import "fmt" -import "os" - import ( - // "flag" + "fmt" + "os" "git.kundeng.us/phoenix/sender/config" "git.kundeng.us/phoenix/sender/messaging" "git.kundeng.us/phoenix/sender/models" "git.kundeng.us/phoenix/sender/util" - // "git.kundeng.us/phoenix/sender/version" + "git.kundeng.us/phoenix/sender/version" ) func main() { - fmt.Println(config.App_Name) myArgs := os.Args argCount := len(myArgs) - fmt.Printf("Argument count: %v\n", argCount) - - if argCount < 4 { + if config.IsVersionFlagPresent() { + fmt.Println(config.App_Name) + fmt.Println(version.String()) + return + } else if argCount < 4 { + fmt.Printf("Argument count: %v\n", argCount) fmt.Println("Provide argument to config file and number file") os.Exit(-1) } @@ -29,16 +29,6 @@ func main() { fmt.Printf("Config file path: %s\n", configPath) - // TODO: For version - /* - versionFlag := flag.Bool("version", false, "Print version information") - flag.Parse() - - if *versionFlag { - fmt.Println(version.String()) - return - } - */ cfg, _ := config.ParseConfig(configPath) cfg.PrintConfig() diff --git a/version/version.go b/version/version.go new file mode 100644 index 0000000..91e3782 --- /dev/null +++ b/version/version.go @@ -0,0 +1,17 @@ +package version + +import "fmt" + +var ( + Version = "dev" + BuildTime = "unknown" + Commit = "unknown" + GoVersion = "unknown" +) + +func String() string { + return fmt.Sprintf( + "Version: %s\nBuild Date: %s\nCommit: %s\nGo Version: %s", + Version, BuildTime, Commit, GoVersion, + ) +}