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-01-07 17:19:32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/terragrunt (Old) and /work/SRC/openSUSE:Factory/.terragrunt.new.1563 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "terragrunt" Sat Jan 7 17:19:32 2023 rev:24 rq:1056669 version:0.42.7 Changes: -------- --- /work/SRC/openSUSE:Factory/terragrunt/terragrunt.changes 2023-01-06 17:06:17.636430126 +0100 +++ /work/SRC/openSUSE:Factory/.terragrunt.new.1563/terragrunt.changes 2023-01-07 17:22:53.971296075 +0100 @@ -1,0 +2,6 @@ +Fri Jan 06 11:41:03 UTC 2023 - ka...@b1-systems.de + +- Update to version 0.42.7: + * #2377 MockOutputs validation before merge (#2379) + +------------------------------------------------------------------- Old: ---- terragrunt-0.42.6.tar.gz New: ---- terragrunt-0.42.7.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ terragrunt.spec ++++++ --- /var/tmp/diff_new_pack.AsaoEE/_old 2023-01-07 17:22:54.883301516 +0100 +++ /var/tmp/diff_new_pack.AsaoEE/_new 2023-01-07 17:22:54.887301540 +0100 @@ -19,7 +19,7 @@ %define __arch_install_post export NO_BRP_STRIP_DEBUG=true Name: terragrunt -Version: 0.42.6 +Version: 0.42.7 Release: 0 Summary: Thin wrapper for Terraform for working with multiple Terraform modules License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.AsaoEE/_old 2023-01-07 17:22:54.927301778 +0100 +++ /var/tmp/diff_new_pack.AsaoEE/_new 2023-01-07 17:22:54.931301802 +0100 @@ -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.42.6</param> + <param name="revision">v0.42.7</param> <param name="versionformat">@PARENT_TAG@</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> @@ -16,7 +16,7 @@ <param name="compression">gz</param> </service> <service name="go_modules" mode="disabled"> - <param name="archive">terragrunt-0.42.6.tar.gz</param> + <param name="archive">terragrunt-0.42.7.tar.gz</param> </service> </services> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.AsaoEE/_old 2023-01-07 17:22:54.955301946 +0100 +++ /var/tmp/diff_new_pack.AsaoEE/_new 2023-01-07 17:22:54.959301970 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/gruntwork-io/terragrunt</param> - <param name="changesrevision">aca83fe0e93f4916818d1322a1b94beb858143d6</param></service></servicedata> + <param name="changesrevision">223943384f81865534ed820f49e48fad9116c51a</param></service></servicedata> (No newline at EOF) ++++++ terragrunt-0.42.6.tar.gz -> terragrunt-0.42.7.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.42.6/config/dependency.go new/terragrunt-0.42.7/config/dependency.go --- old/terragrunt-0.42.6/config/dependency.go 2023-01-05 14:27:40.000000000 +0100 +++ new/terragrunt-0.42.7/config/dependency.go 2023-01-06 11:23:09.000000000 +0100 @@ -332,7 +332,7 @@ return nil, err } - if !isEmpty && dependencyConfig.shouldMergeMockOutputsWithState(terragruntOptions) { + if !isEmpty && dependencyConfig.shouldMergeMockOutputsWithState(terragruntOptions) && dependencyConfig.MockOutputs != nil { mockMergeStrategy := dependencyConfig.getMockOutputsMergeStrategy() switch mockMergeStrategy { case NoMerge: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/deep-map/main.tf new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/deep-map/main.tf --- old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/deep-map/main.tf 1970-01-01 01:00:00.000000000 +0100 +++ new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/deep-map/main.tf 2023-01-06 11:23:09.000000000 +0100 @@ -0,0 +1,3 @@ +output "check_field" { + value = "deep-map-executed" +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/deep-map/terragrunt.hcl new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/deep-map/terragrunt.hcl --- old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/deep-map/terragrunt.hcl 1970-01-01 01:00:00.000000000 +0100 +++ new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/deep-map/terragrunt.hcl 2023-01-06 11:23:09.000000000 +0100 @@ -0,0 +1,8 @@ +dependency "module" { + config_path = "../module" + mock_outputs_merge_strategy_with_state = "deep_map_only" +} + +inputs = { + field = dependency.module.outputs.data.field +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/module/main.tf new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/module/main.tf --- old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/module/main.tf 1970-01-01 01:00:00.000000000 +0100 +++ new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/module/main.tf 2023-01-06 11:23:09.000000000 +0100 @@ -0,0 +1,9 @@ +output "data" { + value = { + field = "field value" + } +} + +output "check_field" { + value = "module-executed" +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/shallow/main.tf new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/shallow/main.tf --- old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/shallow/main.tf 1970-01-01 01:00:00.000000000 +0100 +++ new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/shallow/main.tf 2023-01-06 11:23:09.000000000 +0100 @@ -0,0 +1,3 @@ +output "check_field" { + value = "shallow-map-executed" +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/shallow/terragrunt.hcl new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/shallow/terragrunt.hcl --- old/terragrunt-0.42.6/test/fixture-regressions/mocks-merge-with-state/shallow/terragrunt.hcl 1970-01-01 01:00:00.000000000 +0100 +++ new/terragrunt-0.42.7/test/fixture-regressions/mocks-merge-with-state/shallow/terragrunt.hcl 2023-01-06 11:23:09.000000000 +0100 @@ -0,0 +1,8 @@ +dependency "module" { + config_path = "../module" + mock_outputs_merge_strategy_with_state = "shallow" +} + +inputs = { + field = dependency.module.outputs.data.field +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.42.6/test/integration_test.go new/terragrunt-0.42.7/test/integration_test.go --- old/terragrunt-0.42.6/test/integration_test.go 2023-01-05 14:27:40.000000000 +0100 +++ new/terragrunt-0.42.7/test/integration_test.go 2023-01-06 11:23:09.000000000 +0100 @@ -3353,6 +3353,7 @@ } func logBufferContentsLineByLine(t *testing.T, out bytes.Buffer, label string) { + t.Helper() t.Logf("[%s] Full contents of %s:", t.Name(), label) lines := strings.Split(out.String(), "\n") for _, line := range lines { @@ -5194,6 +5195,36 @@ validateBoolOutput(t, outputs, "endswith9", false) } +func TestMockOutputsMergeWithState(t *testing.T) { + t.Parallel() + + cleanupTerraformFolder(t, TEST_FIXTURE_REGRESSIONS) + tmpEnvPath := copyEnvironment(t, TEST_FIXTURE_REGRESSIONS) + rootPath := util.JoinPath(tmpEnvPath, TEST_FIXTURE_REGRESSIONS, "mocks-merge-with-state") + + modulePath := util.JoinPath(rootPath, "module") + stdout := bytes.Buffer{} + stderr := bytes.Buffer{} + err := runTerragruntCommand(t, fmt.Sprintf("terragrunt apply --terragrunt-log-level debug --terragrunt-non-interactive -auto-approve --terragrunt-working-dir %s", modulePath), &stdout, &stderr) + logBufferContentsLineByLine(t, stdout, "module-executed") + require.NoError(t, err) + + deepMapPath := util.JoinPath(rootPath, "deep-map") + stdout = bytes.Buffer{} + stderr = bytes.Buffer{} + err = runTerragruntCommand(t, fmt.Sprintf("terragrunt apply --terragrunt-log-level debug --terragrunt-non-interactive -auto-approve --terragrunt-working-dir %s", deepMapPath), &stdout, &stderr) + logBufferContentsLineByLine(t, stdout, "deep-map-executed") + require.NoError(t, err) + + shallowPath := util.JoinPath(rootPath, "shallow") + stdout = bytes.Buffer{} + stderr = bytes.Buffer{} + err = runTerragruntCommand(t, fmt.Sprintf("terragrunt apply --terragrunt-log-level debug --terragrunt-non-interactive -auto-approve --terragrunt-working-dir %s", shallowPath), &stdout, &stderr) + logBufferContentsLineByLine(t, stdout, "shallow-map-executed") + require.NoError(t, err) + +} + func validateBoolOutput(t *testing.T, outputs map[string]TerraformOutput, key string, value bool) { t.Helper() output, hasPlatform := outputs[key] ++++++ vendor.tar.gz ++++++ /work/SRC/openSUSE:Factory/terragrunt/vendor.tar.gz /work/SRC/openSUSE:Factory/.terragrunt.new.1563/vendor.tar.gz differ: char 5, line 1