Skip to content

adding [] to JSON output #3

@burninmedia

Description

@burninmedia

Example using HCL2JSON from NPM on osx
$cat ./0-terraform.tf

terraform {
required_version = "= 0.11.11"
}

$ hcl2json ./0-terraform.tf

{
"terraform": {
"required_version": "= 0.11.11"
}
}

Here are the same file contents and the JSON output using your HCL2JSON on a Ubuntu Trusty docker container.
root@0de8e7724845:~# cat test.tf

terraform {
required_version = "= 0.11.11"
}

root@0de8e7724845:~# ./go/bin/hcl2json ./test.tf

{
"terraform": [
{
"required_version": "= 0.11.11"
}
]
}

Notice in the first example that there are no [] around the terraform subkeys. When I pipe this output to jq -r '.terraform' it works as expected but if I filter for a subkey like '.terraform.required_version' I get this error which I believe is due to the [] output from your tool.
root@0de8e7724845:~# ./go/bin/hcl2json ./test.tf |jq -r '.terraform'

[
{
"required_version": "= 0.11.11"
}
]

root@0de8e7724845:~# ./go/bin/hcl2json ./test.tf |jq -r '.terraform.required_version'

jq:

error: Cannot index array with string

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions