refactor: simplify config into a single load/save with defaults resolved at load time

This commit is contained in:
2026-06-12 01:21:04 +02:00
parent 7b8202b50b
commit 6421c28191
7 changed files with 132 additions and 187 deletions
+6 -6
View File
@@ -12,12 +12,12 @@ import (
)
func getNodeService() (service.NodeService, error) {
user := cfg.GetUser()
user := cfg.User
if user == "" {
return nil, fmt.Errorf("no user configured: run 'ax user set <username>' first")
}
if rc, ok := cfg.GetRemoteConfig(); ok {
base := fmt.Sprintf("http://%s:%d", rc.Host, rc.Port)
if cfg.Remote.Host != "" {
base := fmt.Sprintf("http://%s:%d", cfg.Remote.Host, cfg.Remote.Port)
return service.NewRemoteNodeService(base, user), nil
}
st, err := store.FindAndOpenSQLiteStore()
@@ -33,7 +33,7 @@ var rootCmd = &cobra.Command{Use: "ax", Short: "The axolotl issue tracker"}
func Execute() {
var err error
cfg, err = store.LoadConfigFile()
cfg, err = store.LoadConfig()
if err != nil {
fmt.Fprintln(os.Stderr, "failed to load config:", err)
os.Exit(1)
@@ -50,7 +50,7 @@ func init() {
func RegisterAliasCommands() {
rootCmd.AddGroup(&cobra.Group{ID: "aliases", Title: "Aliases:"})
aliases, _ := cfg.ListAliases()
aliases := cfg.Aliases
for _, a := range aliases {
rootCmd.AddCommand(&cobra.Command{
Use: a.Name,
@@ -59,7 +59,7 @@ func RegisterAliasCommands() {
DisableFlagParsing: true,
Run: func(ccmd *cobra.Command, args []string) {
acmd := a.Command
acmd = strings.ReplaceAll(acmd, "$me", cfg.GetUser())
acmd = strings.ReplaceAll(acmd, "$me", cfg.User)
parts := strings.Fields(acmd)
var expanded []string
usedArgs := make([]bool, len(args))