github.com/muratcelep/terraform@v1.1.0-beta2-not-internal-4/not-internal/configs/testdata/escaping-blocks/module/module-escaping-block.tf (about)

     1  
     2  module "foo" {
     3    source = "./child"
     4    count = 2
     5  
     6    normal = "yes"
     7  
     8    normal_block {}
     9  
    10    _ {
    11      # This "escaping block" is an escape hatch for when a module
    12      # declares input variable names that collide with meta-argument
    13      # names. The examples below are not really realistic because they
    14      # are long-standing names that predate the need for escaping,
    15      # but we're using them as a proxy for new meta-arguments we might
    16      # add in future language editions which might collide with
    17      # names defined in pre-existing modules.
    18  
    19      # note that count is set both as a meta-argument above _and_ as
    20      # an resource-type-specific argument here, which is valid and
    21      # should result in both being populated.
    22      count = "not actually count"
    23  
    24      # for_each is only set in here, not as a meta-argument
    25      for_each = "not actually for_each"
    26  
    27      lifecycle {
    28        # This is a literal lifecycle block, not a meta-argument block
    29      }
    30  
    31      _ {
    32          # It would be pretty weird for a resource type to define its own
    33          # "_" block type, but that's valid to escape in here too.
    34      }
    35    }
    36  }