TF_VAR_ prefixed environment variables can no longer be accessed at synth time
These environment variables will now be filtered out in the synth phase since they are only intended to be used during diff (plan) and deploy (apply) phases to supply values for TerraformVariables. This inhibits accidentally inlining those values into the generated cdk.tf.json config.
Environment variable and CLI option changes
DEBUGis replaced by settingCDKTF_LOG_LEVEL=debug, setting theCDKTF_LOG_LEVELto debug will now also behave likeDEBUG=1and include logs from the provider generationCDKTF_DISABLE_LOGGING=falseis replaced by settingCDKTF_LOG_FILE_DIRECTORY=/path/to/logs/directory. If left empty no logs will be written.--disable-loggingwas removed, instead use the environment variableCDKTF_LOG_LEVEL=offDISABLE_VERSION_CHECK,CDKTF_DISABLE_PLUGIN_CACHE_ENVneed to be set totrueor1, before anything worked.
Stack ids can no longer contain whitespaces
ATerraformStack may no longer contain whitespace characters, since we rely on paths being whitespace free. If you have a stack with an id containing a whitespace, please replace it with a hyphen. If the stack was already deployed with the default LocalBackend you might need to rename your statefile to match the new stack id.
Computed Map References are referenced through getter
For computed maps, the reference is now through a getter. To access{ property = "value" }, instead of resource.mapAttribute("property") you can now use resource.mapAttribute.lookup("property").
Example
Use ComplexLists and ComplexMaps for complex assignable properties
PR: #1725 Assignable properties of the formObject[] or { [key: string]: Object } no longer have setters; they instead have putX methods. The getter return type is also changed to be a derivative of either ComplexList or ComplexMap.