refactor: clean up version loading

This commit is contained in:
2025-01-14 23:37:17 +02:00
parent 7526cca128
commit 2b320046c8
3 changed files with 16 additions and 8 deletions

View File

@@ -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.") {

View File

@@ -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
}

View File

@@ -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