From a1d5a026460295996e6ab1320d92117922f35bee Mon Sep 17 00:00:00 2001 From: Laurence Jones Date: Wed, 22 Jun 2022 09:27:43 +0100 Subject: [PATCH] Cscli explain use temp dir (#1598) * Write to temp dir instead of CWD --- cmd/crowdsec-cli/explain.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/cmd/crowdsec-cli/explain.go b/cmd/crowdsec-cli/explain.go index 7e29582d0..f3bfd564f 100644 --- a/cmd/crowdsec-cli/explain.go +++ b/cmd/crowdsec-cli/explain.go @@ -43,10 +43,11 @@ cscli explain --dsn "file://myfile.log" --type nginx } var f *os.File + dir := os.TempDir() // we create a temporary log file if a log line has been provided if logLine != "" { - logFile = "./cscli_test_tmp.log" + logFile = filepath.Join(dir, "cscli_test_tmp.log") f, err := os.Create(logFile) // nolint: govet if err != nil { log.Fatal(err) @@ -77,6 +78,7 @@ cscli explain --dsn "file://myfile.log" --type nginx cmdArgs := []string{"-c", ConfigFilePath, "-type", logType, "-dsn", dsn, "-dump-data", "./", "-no-api"} crowdsecCmd := exec.Command("crowdsec", cmdArgs...) + crowdsecCmd.Dir = dir output, err := crowdsecCmd.CombinedOutput() if err != nil { fmt.Println(string(output)) @@ -90,8 +92,8 @@ cscli explain --dsn "file://myfile.log" --type nginx log.Fatalf("unable to remove tmp log file '%s': %+v", logFile, err) } } - parserDumpFile := filepath.Join("./", cstest.ParserResultFileName) - bucketStateDumpFile := filepath.Join("./", cstest.BucketPourResultFileName) + parserDumpFile := filepath.Join(dir, cstest.ParserResultFileName) + bucketStateDumpFile := filepath.Join(dir, cstest.BucketPourResultFileName) parserDump, err := cstest.LoadParserDump(parserDumpFile) if err != nil {