package main import ( "gopkg.in/yaml.v2" "os" ) type Config struct { Timeout int `yaml:"timeout"` // minutes StartCommand string `yaml:"start_command"` Port string `yaml:"port"` } // this is a global constant since it's shared var config Config func LoadConfig(filePath string) error { data, err := os.ReadFile(filePath) if err != nil { GetLogger().Fatalf("Failed to read config file: %v", err) return err } if err := yaml.Unmarshal(data, &config); err != nil { GetLogger().Fatalf("Failed to unmarshal config: %v", err) return err } GetLogger().Info("Configuration loaded successfully") return nil }