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-05-05 15:59:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/terragrunt (Old)
 and      /work/SRC/openSUSE:Factory/.terragrunt.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "terragrunt"

Fri May  5 15:59:19 2023 rev:42 rq:1085038 version:0.45.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/terragrunt/terragrunt.changes    2023-05-02 
16:23:49.551518062 +0200
+++ /work/SRC/openSUSE:Factory/.terragrunt.new.1533/terragrunt.changes  
2023-05-05 15:59:36.684884806 +0200
@@ -1,0 +2,8 @@
+Fri May 05 10:42:22 UTC 2023 - ka...@b1-systems.de
+
+- Update to version 0.45.9:
+  * Fix parsing output when AWS CSM is enabled (#2554)
+  * Moved issue template files to ISSUE_TEMPLATE directory (#2555)
+  * Add issues templates (#2553)
+
+-------------------------------------------------------------------

Old:
----
  terragrunt-0.45.8.obscpio

New:
----
  terragrunt-0.45.9.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ terragrunt.spec ++++++
--- /var/tmp/diff_new_pack.RYV09d/_old  2023-05-05 15:59:37.572889894 +0200
+++ /var/tmp/diff_new_pack.RYV09d/_new  2023-05-05 15:59:37.576889917 +0200
@@ -19,7 +19,7 @@
 %define __arch_install_post export NO_BRP_STRIP_DEBUG=true
 
 Name:           terragrunt
-Version:        0.45.8
+Version:        0.45.9
 Release:        0
 Summary:        Thin wrapper for Terraform for working with multiple Terraform 
modules
 License:        MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.RYV09d/_old  2023-05-05 15:59:37.628890215 +0200
+++ /var/tmp/diff_new_pack.RYV09d/_new  2023-05-05 15:59:37.636890260 +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.45.8</param>
+    <param name="revision">v0.45.9</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="changesgenerate">enable</param>
     <param name="versionrewrite-pattern">v(.*)</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.RYV09d/_old  2023-05-05 15:59:37.660890398 +0200
+++ /var/tmp/diff_new_pack.RYV09d/_new  2023-05-05 15:59:37.668890444 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/gruntwork-io/terragrunt</param>
-              <param 
name="changesrevision">4427ecc0434cd18837b4e849f4b93a57d793890b</param></service></servicedata>
+              <param 
name="changesrevision">0652685815e3a319a1c4e54d5b7bf10e52c44f8c</param></service></servicedata>
 (No newline at EOF)
 

++++++ terragrunt-0.45.8.obscpio -> terragrunt-0.45.9.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/terragrunt-0.45.8/.github/ISSUE_TEMPLATE/bug_report.md 
new/terragrunt-0.45.9/.github/ISSUE_TEMPLATE/bug_report.md
--- old/terragrunt-0.45.8/.github/ISSUE_TEMPLATE/bug_report.md  1970-01-01 
01:00:00.000000000 +0100
+++ new/terragrunt-0.45.9/.github/ISSUE_TEMPLATE/bug_report.md  2023-05-05 
12:00:09.000000000 +0200
@@ -0,0 +1,33 @@
+---
+name: Bug report
+about: Create a bug report to help us improve Terragrunt.
+title: ''
+labels: bug
+assignees: ''
+
+---
+
+**Describe the bug**
+A clear and concise description of what the bug is.
+
+**To Reproduce**
+Steps to reproduce the behavior, code snippets and examples which can be used 
to reproduce the issue.
+
+```hcl
+// paste code snippets here
+```
+
+**Expected behavior**
+A clear and concise description of what you expected to happen.
+
+**Nice to have**
+- [ ] Terminal output
+- [ ] Screenshots
+
+**Versions**
+- Terragrunt version:
+- Terraform version:
+- Environment details (Ubuntu 20.04, Windows 10, etc.):
+
+**Additional context**
+Add any other context about the problem here.
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/terragrunt-0.45.8/.github/ISSUE_TEMPLATE/feature_request.md 
new/terragrunt-0.45.9/.github/ISSUE_TEMPLATE/feature_request.md
--- old/terragrunt-0.45.8/.github/ISSUE_TEMPLATE/feature_request.md     
1970-01-01 01:00:00.000000000 +0100
+++ new/terragrunt-0.45.9/.github/ISSUE_TEMPLATE/feature_request.md     
2023-05-05 12:00:09.000000000 +0200
@@ -0,0 +1,17 @@
+---
+name: Feature request
+about: Submit a feature request to improve Terragrunt.
+title: ''
+labels: enhancement
+assignees: ''
+
+---
+
+**Describe the solution you'd like**
+A clear and concise description of what you want to happen.
+
+**Describe alternatives you've considered**
+A clear and concise description of any alternative solutions or features 
you've considered.
+
+**Additional context**
+Add any other context or screenshots about the feature request here.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/terragrunt-0.45.8/config/dependency.go 
new/terragrunt-0.45.9/config/dependency.go
--- old/terragrunt-0.45.8/config/dependency.go  2023-05-01 23:12:59.000000000 
+0200
+++ new/terragrunt-0.45.9/config/dependency.go  2023-05-05 12:00:09.000000000 
+0200
@@ -50,10 +50,11 @@
 
 // DeepMerge will deep merge two Dependency configs, updating the target. Deep 
merge for Dependency configs is defined
 // as follows:
-// - For simple attributes (bools and strings), the source will override the 
target.
-// - For MockOutputs, the two maps will be deeply merged together. This means 
that maps are recursively merged, while
-//   lists are concatenated together.
-// - For MockOutputsAllowedTerraformCommands, the source will be concatenated 
to the target.
+//   - For simple attributes (bools and strings), the source will override the 
target.
+//   - For MockOutputs, the two maps will be deeply merged together. This 
means that maps are recursively merged, while
+//     lists are concatenated together.
+//   - For MockOutputsAllowedTerraformCommands, the source will be 
concatenated to the target.
+//
 // Note that RenderedOutputs is ignored in the deep merge operation.
 func (targetDepConfig *Dependency) DeepMerge(sourceDepConfig Dependency) error 
{
        if sourceDepConfig.ConfigPath != "" {
@@ -145,7 +146,8 @@
 // resulting map as a cty.Value object.
 // TODO: In the future, consider allowing importing dependency blocks from 
included config
 // NOTE FOR MAINTAINER: When implementing importation of other config blocks 
(e.g referencing inputs), carefully
-//                      consider whether or not the implementation of the 
cyclic dependency detection still makes sense.
+//
+//     consider whether or not the implementation of the cyclic dependency 
detection still makes sense.
 func decodeAndRetrieveOutputs(
        file *hcl.File,
        filename string,
@@ -262,8 +264,9 @@
 
 // Encode the list of dependency blocks into a single cty.Value object that 
maps the dependency block name to the
 // encoded dependency mapping. The encoded dependency mapping should have the 
attributes:
-// - outputs: The map of outputs of the corresponding terraform module that 
lives at the target config of the
-//            dependency.
+//   - outputs: The map of outputs of the corresponding terraform module that 
lives at the target config of the
+//     dependency.
+//
 // This routine will go through the process of obtaining the outputs using 
`terragrunt output` from the target config.
 func dependencyBlocksToCtyValue(dependencyConfigs []Dependency, 
terragruntOptions *options.TerragruntOptions) (*cty.Value, error) {
        paths := []string{}
@@ -322,9 +325,9 @@
 
 // This will attempt to get the outputs from the target terragrunt config if 
it is applied. If it is not applied, the
 // behavior is different depending on the configuration of the dependency:
-// - If the dependency block indicates a mock_outputs attribute, this will 
return that.
-//   If the dependency block indicates a 
mock_outputs_merge_strategy_with_state attribute, mock_outputs and state 
outputs will be merged following the merge strategy
-// - If the dependency block does NOT indicate a mock_outputs attribute, this 
will return an error.
+//   - If the dependency block indicates a mock_outputs attribute, this will 
return that.
+//     If the dependency block indicates a 
mock_outputs_merge_strategy_with_state attribute, mock_outputs and state 
outputs will be merged following the merge strategy
+//   - If the dependency block does NOT indicate a mock_outputs attribute, 
this will return an error.
 func getTerragruntOutputIfAppliedElseConfiguredDefault(dependencyConfig 
Dependency, terragruntOptions *options.TerragruntOptions) (*cty.Value, error) {
        if dependencyConfig.shouldGetOutputs() {
                outputVal, isEmpty, err := 
getTerragruntOutput(dependencyConfig, terragruntOptions)
@@ -452,6 +455,14 @@
        if err != nil {
                return nil, err
        }
+
+       // When AWS Client Side Monitoring (CSM) is enabled the aws-sdk-go 
displays log as a plaintext "Enabling CSM" to stdout, even if the `output 
-json` flag is specified. The final output looks like this: "2023/05/04 
20:22:43 Enabling CSM{...omitted json string...}", and and prevents proper json 
parsing. Since there is no way to disable this log, the only way out is to 
filter.
+       // Related AWS code: 
https://github.com/aws/aws-sdk-go/blob/81d1cbbc6a2028023aff7bcab0fe1be320cd39f7/aws/session/session.go#L444
+       // Related issues: 
https://github.com/gruntwork-io/terragrunt/issues/2233 
https://github.com/hashicorp/terraform-provider-aws/issues/23620
+       if index := bytes.IndexByte(newJsonBytes, byte('{')); index > 0 {
+               newJsonBytes = newJsonBytes[index:]
+       }
+
        jsonOutputCache.Store(targetConfig, newJsonBytes)
        return newJsonBytes, nil
 }
@@ -820,6 +831,7 @@
                Value     json.RawMessage `json:"value"`
        }
        var outputs map[string]OutputMeta
+
        err := json.Unmarshal(jsonBytes, &outputs)
        if err != nil {
                return nil, 
errors.WithStackTrace(TerragruntOutputParsingError{Path: targetConfig, Err: 
err})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/app/terragrunt.hcl 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/app/terragrunt.hcl
--- 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/app/terragrunt.hcl    
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/app/terragrunt.hcl    
    2023-05-05 12:00:09.000000000 +0200
@@ -0,0 +1,11 @@
+dependencies {
+  paths = ["../dependency"]
+}
+
+dependency "test" {
+  config_path = "../dependency"
+}
+
+inputs = {
+  vpc_config = dependency.test.outputs
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/dependency/outputs.tf 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/dependency/outputs.tf
--- 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/dependency/outputs.tf 
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/dependency/outputs.tf 
    2023-05-05 12:00:09.000000000 +0200
@@ -0,0 +1,4 @@
+output "foo" {
+  value       = var.foo
+  description = "Test foo value"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/dependency/terragrunt.hcl
 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/dependency/terragrunt.hcl
--- 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/dependency/terragrunt.hcl
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/dependency/terragrunt.hcl
 2023-05-05 12:00:09.000000000 +0200
@@ -0,0 +1,16 @@
+# Configure Terragrunt to automatically store tfstate files in an S3 bucket
+remote_state {
+  backend = "s3"
+
+  generate = {
+    path      = "backend.tf"
+    if_exists = "overwrite"
+  }
+
+  config = {
+    encrypt = true
+    bucket  = "__FILL_IN_BUCKET_NAME__"
+    key     = "${path_relative_to_include()}/terraform.tfstate"
+    region  = "__FILL_IN_REGION__"
+  }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/dependency/variables.tf
 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/dependency/variables.tf
--- 
old/terragrunt-0.45.8/test/fixture-output-from-dependency/dependency/variables.tf
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/terragrunt-0.45.9/test/fixture-output-from-dependency/dependency/variables.tf
   2023-05-05 12:00:09.000000000 +0200
@@ -0,0 +1,5 @@
+variable "foo" {
+  description = "The value to be returned from the module"
+  type        = string
+  default     = "test-foo-value"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/terragrunt-0.45.8/test/integration_test.go 
new/terragrunt-0.45.9/test/integration_test.go
--- old/terragrunt-0.45.8/test/integration_test.go      2023-05-01 
23:12:59.000000000 +0200
+++ new/terragrunt-0.45.9/test/integration_test.go      2023-05-05 
12:00:09.000000000 +0200
@@ -59,6 +59,7 @@
        TEST_FIXTURE_GRAPH_DEPENDENCIES                         = 
"fixture-graph-dependencies"
        TEST_FIXTURE_OUTPUT_ALL                                 = 
"fixture-output-all"
        TEST_FIXTURE_OUTPUT_FROM_REMOTE_STATE                   = 
"fixture-output-from-remote-state"
+       TEST_FIXTURE_OUTPUT_FROM_DEPENDENCY                     = 
"fixture-output-from-dependency"
        TEST_FIXTURE_STDOUT                                     = 
"fixture-download/stdout-test"
        TEST_FIXTURE_EXTRA_ARGS_PATH                            = 
"fixture-extra-args/"
        TEST_FIXTURE_ENV_VARS_BLOCK_PATH                        = 
"fixture-env-vars-block/"
@@ -873,6 +874,34 @@
 
        assert.True(t, (strings.Index(output, "app3 output") < 
strings.Index(output, "app1 output")) && (strings.Index(output, "app1 output") 
< strings.Index(output, "app2 output")))
 }
+
+func TestTerragruntOutputFromDependency(t *testing.T) {
+       // t.Parallel() cannot be used together with t.Setenv()
+
+       s3BucketName := fmt.Sprintf("terragrunt-test-bucket-%s", 
strings.ToLower(uniqueId()))
+       defer deleteS3Bucket(t, TERRAFORM_REMOTE_STATE_S3_REGION, s3BucketName)
+
+       tmpEnvPath := copyEnvironment(t, TEST_FIXTURE_OUTPUT_FROM_DEPENDENCY)
+
+       rootTerragruntPath := util.JoinPath(tmpEnvPath, 
TEST_FIXTURE_OUTPUT_FROM_DEPENDENCY)
+       depTerragruntConfigPath := util.JoinPath(rootTerragruntPath, 
"dependency", config.DefaultTerragruntConfigPath)
+
+       copyTerragruntConfigAndFillPlaceholders(t, depTerragruntConfigPath, 
depTerragruntConfigPath, s3BucketName, "not-used", 
TERRAFORM_REMOTE_STATE_S3_REGION)
+
+       var (
+               stdout bytes.Buffer
+               stderr bytes.Buffer
+       )
+
+       t.Setenv("AWS_CSM_ENABLED", "true")
+
+       err := runTerragruntCommand(t, fmt.Sprintf("terragrunt run-all apply 
-auto-approve --terragrunt-non-interactive --terragrunt-working-dir %s 
--terragrunt-log-level debug", rootTerragruntPath), &stdout, &stderr)
+       assert.NoError(t, err)
+
+       output := stderr.String()
+       assert.NotContains(t, output, "invalid character")
+}
+
 func TestTerragruntValidateAllCommand(t *testing.T) {
        t.Parallel()
 

++++++ terragrunt.obsinfo ++++++
--- /var/tmp/diff_new_pack.RYV09d/_old  2023-05-05 15:59:38.456894959 +0200
+++ /var/tmp/diff_new_pack.RYV09d/_new  2023-05-05 15:59:38.460894981 +0200
@@ -1,5 +1,5 @@
 name: terragrunt
-version: 0.45.8
-mtime: 1682975579
-commit: 4427ecc0434cd18837b4e849f4b93a57d793890b
+version: 0.45.9
+mtime: 1683280809
+commit: 0652685815e3a319a1c4e54d5b7bf10e52c44f8c
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/terragrunt/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.terragrunt.new.1533/vendor.tar.gz differ: char 5, 
line 1

Reply via email to