cgr-engine: Revise flag parsing error handling

Use flag.ExitOnError for automatic error handling.
Remove manual error check in main().
Set proper exit codes: 0 for help, 2 for parsing errors.
Avoid misleading '<InitS> error' log on help requests.
This commit is contained in:
ionutboangiu
2024-09-18 13:20:11 +03:00
committed by Dan Christian Bogos
parent 7add01320e
commit 798fc33bfc

View File

@@ -41,7 +41,7 @@ import (
)
var (
cgrEngineFlags = flag.NewFlagSet("cgr-engine", flag.ContinueOnError)
cgrEngineFlags = flag.NewFlagSet("cgr-engine", flag.ExitOnError)
cfgPath = cgrEngineFlags.String("config_path", utils.CONFIG_PATH, "Configuration directory path.")
version = cgrEngineFlags.Bool("version", false, "Prints the application version.")
checkConfig = cgrEngineFlags.Bool("check_config", false, "Verify the config without starting the engine")
@@ -319,10 +319,7 @@ func singnalHandler(exitChan chan bool) {
}
func main() {
if err := cgrEngineFlags.Parse(os.Args[1:]); err != nil {
log.Fatalf("<%s> error received: <%s>, exiting!", utils.InitS, err.Error())
return
}
cgrEngineFlags.Parse(os.Args[1:])
vers, err := utils.GetCGRVersion()
if err != nil {
log.Fatalf("<%s> error received: <%s>, exiting!", utils.InitS, err.Error())