332010fd56
If a dynamic block (in the HCL dynamic block extension sense) has an unknown value for its for_each argument, it gets expanded to a single placeholder block with all of its attributes set to a unknown values. We can use this as part of a heuristic to relax our object compatibility checks for situations where the plan included an object that appears to be (but isn't necessarily) such a placeholder, allowing for the fact that the one placeholder block could be replaced with zero or more real blocks once the for_each value is known. Previously our heuristic was too strict: it would match only if the only block present was a dynamic placeholder. In practice, users may mix dynamic blocks with static blocks of the same type, so we need to be more liberal to avoid generating incorrect incompatibility errors in such cases. |
||
---|---|---|
.. | ||
all_null.go | ||
compatible.go | ||
compatible_test.go | ||
doc.go | ||
lcs.go | ||
lcs_test.go | ||
normalize_obj.go | ||
normalize_obj_test.go | ||
objchange.go | ||
objchange_test.go | ||
plan_valid.go | ||
plan_valid_test.go |