hashicorp / terraform-cdk

Define infrastructure resources using programming constructs and provision them using HashiCorp Terraform
https://www.terraform.io/cdktf
Mozilla Public License 2.0
4.79k stars 441 forks source link

cdktf: synth --hcl fails to render false(bool), 0(int), ""(empty string) #3621

Open tenminus11 opened 1 month ago

tenminus11 commented 1 month ago

Expected Behavior

false should come as a parameter instead it is empty in hcl, it is present in .json "" empty string in resource and module also fails to render 0 value also fails to render in module

module "prj_vpc-host-hub" {
  billing_account                = "${var.billing_id}"
  enable_shared_vpc_host_project = false
  folder_id                      = "${google_folder.fldr_Common.name}"
  name                           = "vpc-host-hub"
  org_id                         = "${var.organization_id}"
  source                         = "terraform-google-modules/project-factory/google"
  version                        = "~> 15.0"
}

Actual Behavior

module "prj_vpc-host-hub" {
  billing_account                = "${var.billing_id}"
  enable_shared_vpc_host_project =
  folder_id                      = "${google_folder.fldr_Common.name}"
  name                           = "vpc-host-hub"
  org_id                         = "${var.organization_id}"
  source                         = "terraform-google-modules/project-factory/google"
  version                        = "~> 15.0"
}

Steps to Reproduce

projects_arg = {
                "name": project,
                "org_id": organization_id.string_value,
                "billing_account": billing_id.string_value,
                "enable_shared_vpc_host_project": False,
                **proj_param,
            }
ProjectFactory(self, f"prj_{project}", **projects_arg)

Versions

anguage: python cdktf-cli: 0.20.7 node: v20.12.2 cdktf: 0.20.7 constructs: 10.3.0 jsii: 1.98.0 terraform: 1.5.6 arch: x64 os: linux 6.6.15-2rodete2-amd64 python: Python 3.11.8 pip: pip 24.0 from xxxxxxx/lib/python3.11/site-packages/pip (python 3.11) pipenv: pipenv, version 2023.12.1 providers google@~> 5.28.0 (LOCAL) terraform provider version: 5.28.0 cdktf-cdktf-provider-google (PREBUILT) terraform provider version: 5.27.0 prebuilt provider version: 13.16.0 cdktf version: ^0.20.0

Providers

┌───────────────┬──────────────────┬─────────┬────────────┬─────────────────────────────┬─────────────────┐ │ Provider Name │ Provider Version │ CDKTF │ Constraint │ Package Name │ Package Version │ ├───────────────┼──────────────────┼─────────┼────────────┼─────────────────────────────┼─────────────────┤ │ google │ 5.28.0 │ │ ~> 5.28.0 │ │ │ ├───────────────┼──────────────────┼─────────┼────────────┼─────────────────────────────┼─────────────────┤ │ google │ 5.27.0 │ ^0.20.0 │ │ cdktf-cdktf-provider-google │ 13.16.0 │ └───────────────┴──────────────────┴─────────┴────────────┴─────────────────────────────┴─────────────────┘

Gist

No response

Possible Solutions

No response

Workarounds

No response

Anything Else?

No response

References

No response

Help Wanted

Community Note

tenminus11 commented 1 month ago

false fails to render in module "" empty string fails to render in resource and module 0 value also fails to render in module