From a31b01458c9e51f33ca96f7f331077f37a931e75 Mon Sep 17 00:00:00 2001 From: Keepers Date: Thu, 27 Oct 2022 16:57:05 -0600 Subject: [PATCH] flush logs on cmd failure (#1338) ## Description The secondary scripts in corso (factory, purge, etc) are not currently flushing their logs if an error occurrs since os.Exit(1) kills the current process without alloting time for deferred funcs to run. ## Type of change - [x] :bug: Bugfix ## Issue(s) * #902 ## Test Plan - [x] :green_heart: E2E --- src/cmd/factory/factory.go | 1 + src/cmd/getM365/getItem.go | 1 + src/cmd/purge/purge.go | 1 + 3 files changed, 3 insertions(+) diff --git a/src/cmd/factory/factory.go b/src/cmd/factory/factory.go index 9cd201b9e..bbde061a2 100644 --- a/src/cmd/factory/factory.go +++ b/src/cmd/factory/factory.go @@ -79,6 +79,7 @@ func main() { addOneDriveCommands(oneDriveCmd) if err := factoryCmd.ExecuteContext(ctx); err != nil { + logger.Flush(ctx) os.Exit(1) } } diff --git a/src/cmd/getM365/getItem.go b/src/cmd/getM365/getItem.go index 84daa2f2f..111185ba8 100644 --- a/src/cmd/getM365/getItem.go +++ b/src/cmd/getM365/getItem.go @@ -63,6 +63,7 @@ func main() { cobra.CheckErr(getCmd.MarkPersistentFlagRequired("category")) if err := getCmd.ExecuteContext(ctx); err != nil { + logger.Flush(ctx) os.Exit(1) } } diff --git a/src/cmd/purge/purge.go b/src/cmd/purge/purge.go index 717f5b4af..b451fb398 100644 --- a/src/cmd/purge/purge.go +++ b/src/cmd/purge/purge.go @@ -88,6 +88,7 @@ func main() { purgeCmd.AddCommand(oneDriveCmd) if err := purgeCmd.ExecuteContext(ctx); err != nil { + logger.Flush(ctx) os.Exit(1) } }