opentofu/plans/objchange
Martin Atkins fec6e0328d plans/objchange: AssertPlanValid function
Completing our set of provider result safety-check functions,
AssertPlanValid checks a result from a provider's PlanResourceChange to
make sure it doesn't propose a change that is not valid within the user
model of Terraform.

Specifically, it forbids the provider from planning a value that
contradicts what the user gave in configuration, which is important to
ensure that making a reference to an attribute elsewhere in the
configuration will produce exactly the given result, as users reasonably
expect.

Providers _are_ allowed (and, in fact, required) to make changes to
any Computed attribute values declared in the schema in order to fill in
the default values that the provider has generated. Later checks during
the apply phase will ensure that the provider remains true to these
planned values, to ensure that Terraform can keep its promise of doing
exactly what was planned or presenting an error explaining why not.
2019-02-08 19:47:02 -08:00
..
all_null.go plans/objchange: Don't presume unknown for values unset in config 2019-02-07 14:01:39 -08:00
compatible_test.go plans/objchange: Improve precision of AssertObjectCompatible with sets 2019-02-04 18:19:46 -08:00
compatible.go plans/objchange: Improve precision of AssertObjectCompatible with sets 2019-02-04 18:19:46 -08:00
doc.go plans/objchange: logic for merging prior state with config 2018-10-16 19:11:09 -07:00
lcs_test.go plans/objchange: LongestCommonSubsequence 2018-10-16 19:14:11 -07:00
lcs.go plans/objchange: LongestCommonSubsequence 2018-10-16 19:14:11 -07:00
objchange_test.go plans/objchange: Don't presume unknown for values unset in config 2019-02-07 14:01:39 -08:00
objchange.go core: Restore our EvalReadData behavior 2019-02-07 18:33:14 -08:00
plan_valid_test.go plans/objchange: AssertPlanValid function 2019-02-08 19:47:02 -08:00
plan_valid.go plans/objchange: AssertPlanValid function 2019-02-08 19:47:02 -08:00