Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package terragrunt for openSUSE:Factory checked in at 2023-09-14 16:25:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/terragrunt (Old) and /work/SRC/openSUSE:Factory/.terragrunt.new.1766 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "terragrunt" Thu Sep 14 16:25:34 2023 rev:63 rq:1110975 version:0.50.16 Changes: -------- --- /work/SRC/openSUSE:Factory/terragrunt/terragrunt.changes 2023-09-13 20:47:33.252472662 +0200 +++ /work/SRC/openSUSE:Factory/.terragrunt.new.1766/terragrunt.changes 2023-09-14 16:28:12.112018306 +0200 @@ -1,0 +2,6 @@ +Wed Sep 13 14:34:38 UTC 2023 - ka...@b1-systems.de + +- Update to version 0.50.16: + * Improved checking of windows console errors (#2711) + +------------------------------------------------------------------- Old: ---- terragrunt-0.50.15.obscpio New: ---- terragrunt-0.50.16.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ terragrunt.spec ++++++ --- /var/tmp/diff_new_pack.KVWC7M/_old 2023-09-14 16:28:13.576070607 +0200 +++ /var/tmp/diff_new_pack.KVWC7M/_new 2023-09-14 16:28:13.576070607 +0200 @@ -19,7 +19,7 @@ %define __arch_install_post export NO_BRP_STRIP_DEBUG=true Name: terragrunt -Version: 0.50.15 +Version: 0.50.16 Release: 0 Summary: Thin wrapper for Terraform for working with multiple Terraform modules License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.KVWC7M/_old 2023-09-14 16:28:13.604071607 +0200 +++ /var/tmp/diff_new_pack.KVWC7M/_new 2023-09-14 16:28:13.608071750 +0200 @@ -3,7 +3,7 @@ <param name="url">https://github.com/gruntwork-io/terragrunt</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">v0.50.15</param> + <param name="revision">v0.50.16</param> <param name="versionformat">@PARENT_TAG@</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.KVWC7M/_old 2023-09-14 16:28:13.624072322 +0200 +++ /var/tmp/diff_new_pack.KVWC7M/_new 2023-09-14 16:28:13.628072465 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/gruntwork-io/terragrunt</param> - <param name="changesrevision">aa17e62bb9012a31ec5f5ed03070be6e8f10d844</param></service></servicedata> + <param name="changesrevision">c0e6eddb0715912ca5402da581356761b1243fdb</param></service></servicedata> (No newline at EOF) ++++++ terragrunt-0.50.15.obscpio -> terragrunt-0.50.16.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.50.15/cli/app.go new/terragrunt-0.50.16/cli/app.go --- old/terragrunt-0.50.15/cli/app.go 2023-09-11 11:42:31.000000000 +0200 +++ new/terragrunt-0.50.16/cli/app.go 2023-09-13 15:55:15.000000000 +0200 @@ -8,6 +8,8 @@ "sort" "strings" + "github.com/gruntwork-io/terragrunt/shell" + "github.com/gruntwork-io/go-commons/errors" "github.com/gruntwork-io/go-commons/version" "github.com/gruntwork-io/terragrunt/config" @@ -208,6 +210,9 @@ opts.OriginalIAMRoleOptions = opts.IAMRoleOptions opts.RunTerragrunt = terraform.Run + + shell.PrepareConsole(opts) + return nil } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.50.15/shell/ptty_unix.go new/terragrunt-0.50.16/shell/ptty_unix.go --- old/terragrunt-0.50.15/shell/ptty_unix.go 2023-09-11 11:42:31.000000000 +0200 +++ new/terragrunt-0.50.16/shell/ptty_unix.go 2023-09-13 15:55:15.000000000 +0200 @@ -85,3 +85,7 @@ return nil } + +func PrepareConsole(terragruntOptions *options.TerragruntOptions) { + // No operation function to match windows execution +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.50.15/shell/ptty_windows.go new/terragrunt-0.50.16/shell/ptty_windows.go --- old/terragrunt-0.50.15/shell/ptty_windows.go 2023-09-11 11:42:31.000000000 +0200 +++ new/terragrunt-0.50.16/shell/ptty_windows.go 2023-09-13 15:55:15.000000000 +0200 @@ -7,6 +7,7 @@ "io" "os" "os/exec" + "strings" "golang.org/x/sys/windows" @@ -14,6 +15,8 @@ "github.com/gruntwork-io/terragrunt/options" ) +const InvalidHandleErrorMessage = "The handle is invalid" + // PrepareConsole enables support for escape sequences // https://stackoverflow.com/questions/56460651/golang-fmt-print-033c-and-fmt-print-x1bc-are-not-clearing-screenansi-es // https://github.com/containerd/console/blob/f652dc3/console_windows.go#L46 @@ -27,13 +30,20 @@ var mode uint32 handle := windows.Handle(file.Fd()) if err := windows.GetConsoleMode(handle, &mode); err != nil { - options.Logger.Errorf("failed to get console mode: %v\n", err) + if strings.Contains(err.Error(), InvalidHandleErrorMessage) { + options.Logger.Debugf("failed to get console mode: %v\n", err) + } else { + options.Logger.Errorf("failed to get console mode: %v\n", err) + } return } if err := windows.SetConsoleMode(handle, mode|windows.ENABLE_VIRTUAL_TERMINAL_PROCESSING); err != nil { options.Logger.Errorf("failed to set console mode: %v\n", err) - windows.SetConsoleMode(handle, mode) + if secondError := windows.SetConsoleMode(handle, mode); secondError != nil { + options.Logger.Errorf("failed to set console mode: %v\n", secondError) + return + } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.50.15/shell/run_shell_cmd_windows_test.go new/terragrunt-0.50.16/shell/run_shell_cmd_windows_test.go --- old/terragrunt-0.50.15/shell/run_shell_cmd_windows_test.go 2023-09-11 11:42:31.000000000 +0200 +++ new/terragrunt-0.50.16/shell/run_shell_cmd_windows_test.go 2023-09-13 15:55:15.000000000 +0200 @@ -4,6 +4,8 @@ package shell import ( + "bytes" + "context" goerrors "errors" "fmt" "os" @@ -12,10 +14,30 @@ "testing" "time" + "github.com/sirupsen/logrus" + "github.com/gruntwork-io/terragrunt/options" "github.com/stretchr/testify/assert" ) +func TestWindowsConsolePrepare(t *testing.T) { + t.Parallel() + + testOptions := options.NewTerragruntOptions() + + stdout := bytes.Buffer{} + + var testLogger = logrus.New() + testLogger.Out = &stdout + testLogger.Level = logrus.DebugLevel + + testOptions.Logger = testLogger.WithContext(context.Background()) + + PrepareConsole(testOptions) + + assert.Contains(t, stdout.String(), "level=debug msg=\"failed to get console mode: The handle is invalid.") +} + func TestExitCodeWindows(t *testing.T) { t.Parallel() ++++++ terragrunt.obsinfo ++++++ --- /var/tmp/diff_new_pack.KVWC7M/_old 2023-09-14 16:28:14.348098187 +0200 +++ /var/tmp/diff_new_pack.KVWC7M/_new 2023-09-14 16:28:14.352098330 +0200 @@ -1,5 +1,5 @@ name: terragrunt -version: 0.50.15 -mtime: 1694425351 -commit: aa17e62bb9012a31ec5f5ed03070be6e8f10d844 +version: 0.50.16 +mtime: 1694613315 +commit: c0e6eddb0715912ca5402da581356761b1243fdb ++++++ vendor.tar.gz ++++++ /work/SRC/openSUSE:Factory/terragrunt/vendor.tar.gz /work/SRC/openSUSE:Factory/.terragrunt.new.1766/vendor.tar.gz differ: char 5, line 1