From 8f8d2d11a493f3ddf89cbd278ab18085ead1cc7d Mon Sep 17 00:00:00 2001 From: Kylesoda <249518290+kylesoda@users.noreply.github.com> Date: Sat, 9 May 2026 08:36:30 -0500 Subject: [PATCH] refactor: enhance config handling in main; unify config parsing logic across scripts --- cmd/go_migrate/main.go | 14 +++++++++++++- scripts/config-parser/main.go | 15 ++++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/cmd/go_migrate/main.go b/cmd/go_migrate/main.go index 7c6764c..9a24884 100644 --- a/cmd/go_migrate/main.go +++ b/cmd/go_migrate/main.go @@ -2,6 +2,7 @@ package main import ( "context" + "flag" "sync" "time" @@ -19,7 +20,18 @@ import ( func main() { configureLog() - migrationConfig, err := config.ReadMigrationConfig() + configPath := flag.String("config", "", "path to migration config file") + flag.Parse() + + if flag.NArg() > 1 { + log.Fatalf("only one config file path is allowed") + } + + if *configPath == "" && flag.NArg() == 1 { + *configPath = flag.Arg(0) + } + + migrationConfig, err := config.ReadMigrationConfig(*configPath) if err != nil { log.Fatalf("error leyendo configuracion: %v", err) } diff --git a/scripts/config-parser/main.go b/scripts/config-parser/main.go index fc1b13a..99e22c0 100644 --- a/scripts/config-parser/main.go +++ b/scripts/config-parser/main.go @@ -1,6 +1,8 @@ package main import ( + "flag" + "git.ksdemosapps.com/kylesoda/go-migrate/internal/app/config" log "github.com/sirupsen/logrus" ) @@ -8,7 +10,18 @@ import ( func main() { log.SetLevel(log.DebugLevel) - migrationConfig, err := config.ReadMigrationConfig() + configPath := flag.String("config", "", "path to migration config file") + flag.Parse() + + if flag.NArg() > 1 { + log.Fatalf("only one config file path is allowed") + } + + if *configPath == "" && flag.NArg() == 1 { + *configPath = flag.Arg(0) + } + + migrationConfig, err := config.ReadMigrationConfig(*configPath) if err != nil { log.Fatalf("error leyendo configuracion: %v", err) }