Skip to content

Unsupported block type #17

Closed
Closed
@damonconway

Description

@damonconway

When running plan on my code, I get these errors. I am running terraform 0.12.6 from terragrunt 0.19.14 on a Mac.

Error: Unsupported block type

  on .terraform/modules/rabbitmq/ulamlabs-terraform-aws-rabbitmq-2889a04/main.tf line 49, in data "template_file" "cloud-init":
  49:   vars {

Blocks of type "vars" are not expected here. Did you mean to define argument
"vars"? If so, use the equals sign to assign it a value.


Error: Unsupported block type

  on .terraform/modules/rabbitmq/ulamlabs-terraform-aws-rabbitmq-2889a04/main.tf line 105, in resource "aws_security_group" "rabbitmq_elb":
 105:   tags {

Blocks of type "tags" are not expected here. Did you mean to define argument
"tags"? If so, use the equals sign to assign it a value.

According to https://www.terraform.io/docs/providers/template/d/file.html and https://www.terraform.io/docs/providers/aws/r/security_group.html those should use an =.

Found this in the upgrade docs (https://www.terraform.io/upgrade-guides/0-12.html):

Due to the design of the configuration language decoder in Terraform v0.11 and earlier, it was in many cases possible to interchange the argument syntax (with =) and the block syntax (with just braces) when dealing with map arguments vs. nested blocks. However, this led to some subtle bugs and limitations, so Terraform v0.12 now requires consistent usage of argument syntax for arguments and nested block syntax for nested blocks.

This leads me to believe that it should be safe to use an equal sign for pre 0.12 versions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions