diff --git a/appconfig/appconfig.go b/appconfig/appconfig.go index 2906748..7566a5e 100644 --- a/appconfig/appconfig.go +++ b/appconfig/appconfig.go @@ -142,7 +142,7 @@ func ContainsPlatform(platforms *[]Platform, platform Platform) bool { return false } -func ParseConfig(version string, overrides *AppCliConfig) (*AppConfig, error) { +func ParseConfig(overrides *AppCliConfig) (*AppConfig, error) { file := overrides.ConfigFile ext := filepath.Ext(file) switch ext { @@ -198,7 +198,13 @@ func tryConfigDir(dir string) string { return "" } -func ParseCliConfig(version string) *AppCliConfig { +var AppVersion string + +func SetVersion(v string) { + AppVersion = v +} + +func ParseCliConfig() *AppCliConfig { args := os.Args[1:] config := &AppCliConfig{} file := FindConfigFile() @@ -227,7 +233,7 @@ func ParseCliConfig(version string) *AppCliConfig { fmt.Println("For online documentation, see https://github.com/chenasraf/sofmani/tree/master/docs") os.Exit(0) case "-v", "--version": - fmt.Println(version) + fmt.Println(AppVersion) os.Exit(0) default: if strings.HasPrefix(strings.TrimSpace(args[0]), "-test.") { diff --git a/config.go b/config.go index 19f8107..1b860e4 100644 --- a/config.go +++ b/config.go @@ -4,9 +4,9 @@ import ( "github.com/chenasraf/sofmani/appconfig" ) -func LoadConfig(version string) (*appconfig.AppConfig, error) { - overrides := appconfig.ParseCliConfig(version) - cfg, err := appconfig.ParseConfig(version, overrides) +func LoadConfig() (*appconfig.AppConfig, error) { + overrides := appconfig.ParseCliConfig() + cfg, err := appconfig.ParseConfig(overrides) if err != nil { return nil, err } diff --git a/main.go b/main.go index 27ea906..0fd1961 100644 --- a/main.go +++ b/main.go @@ -6,15 +6,17 @@ import ( "os" "strings" + "github.com/chenasraf/sofmani/appconfig" "github.com/chenasraf/sofmani/installer" "github.com/chenasraf/sofmani/logger" ) //go:embed version.txt -var version []byte +var appVersion []byte func main() { - cfg, err := LoadConfig(strings.TrimSpace(string(version))) + appconfig.SetVersion(strings.TrimSpace(string(appVersion))) + cfg, err := LoadConfig() if err != nil { fmt.Println(fmt.Errorf("Error loading config: %v", err)) return