From 21d3e8ee68c4322075432758c88e06fdbf36db46 Mon Sep 17 00:00:00 2001 From: "Arik Jones (aider)" Date: Mon, 16 Sep 2024 09:52:48 -0500 Subject: [PATCH] fix: Handle missing configuration file for help command --- cmd/root.go | 3 +++ main.go | 30 +++++++++++++++++++----------- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/cmd/root.go b/cmd/root.go index e8063c5..70bbda6 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -53,6 +53,9 @@ whose name is -rollup-.md.`, func Execute(config *config.Config) error { cfg = config + if cfg == nil { + cfg = &config.Config{} // Use an empty config if none is provided + } return rootCmd.Execute() } diff --git a/main.go b/main.go index cdd9cce..0f7d9c7 100644 --- a/main.go +++ b/main.go @@ -13,21 +13,29 @@ import ( var cfg *config.Config func main() { - configPath := config.DefaultConfigPath() + // Check if the command is "help" + isHelpCommand := len(os.Args) > 1 && (os.Args[1] == "help" || os.Args[1] == "--help" || os.Args[1] == "-h") + + var cfg *config.Config var err error - cfg, err = config.Load(configPath) - if err != nil { - log.Fatalf("Failed to load configuration: %v", err) - } - // Initialize the scraper logger with default verbosity (false) - scraper.SetupLogger(false) + if !isHelpCommand { + configPath := config.DefaultConfigPath() + cfg, err = config.Load(configPath) + if err != nil { + log.Printf("Warning: Failed to load configuration: %v", err) + // Continue execution without a config file + } - err = scraper.InitPlaywright() - if err != nil { - log.Fatalf("Failed to initialize Playwright: %v", err) + // Initialize the scraper logger with default verbosity (false) + scraper.SetupLogger(false) + + err = scraper.InitPlaywright() + if err != nil { + log.Fatalf("Failed to initialize Playwright: %v", err) + } + defer scraper.ClosePlaywright() } - defer scraper.ClosePlaywright() if err := cmd.Execute(cfg); err != nil { fmt.Println(err)