terraform/plans
Martin Atkins 7216049fdb plans/objchange: Improve precision of AssertObjectCompatible with sets
Previously we were just asserting that the number of elements didn't grow
between planned and actual. We still can't precisely correlate elements in
sets with unknown values, but here we adapt some logic we added earlier
to config/hcl2shim to ensure that we can find a plausible correlation for
each element in each set to at least one element in the other set, and
thus catch more cases where set elements might vanish or appear between
plan and apply, for improved safety.

This will still generate false negatives in some cases where unknown
values are present due to having to assume correlation is intended
wherever it is possible, but we'll catch situations where the actual value
is obviously contrary to what was planned.
2019-02-04 18:19:46 -08:00
..
internal/planproto build: Take protoc out of the "go generate" path 2018-10-18 10:39:20 -07:00
objchange plans/objchange: Improve precision of AssertObjectCompatible with sets 2019-02-04 18:19:46 -08:00
planfile test for destroy plan round trip 2018-12-20 15:11:08 -05:00
action.go core: Handle forced-create_before_destroy during the plan walk 2018-10-16 19:14:11 -07:00
action_string.go plans: Regenerate Action.String for new action values 2018-10-16 19:14:11 -07:00
changes.go plans: OutputChange.Encode must preserve Addr field 2018-11-01 17:33:10 -07:00
changes_src.go don't attempt to decode empty changes values 2018-12-20 13:06:53 -05:00
changes_state.go plans: New package for in-memory plan models 2018-10-16 18:50:29 -07:00
changes_sync.go core: Allow planned output changes to be updated during apply 2018-11-05 16:02:45 -08:00
doc.go plans: New package for in-memory plan models 2018-10-16 18:50:29 -07:00
dynamic_value.go don't convert empty DynamicValue to nil 2018-12-20 10:28:26 -05:00
dynamic_value_test.go plans: New package for in-memory plan models 2018-10-16 18:50:29 -07:00
plan.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
plan_test.go make Changes.Empty() not count NoOps 2018-10-16 19:14:11 -07:00