terraform/backend/local
Martin Atkins a43b7df282 core: Handle forced-create_before_destroy during the plan walk
Previously we used a single plan action "Replace" to represent both the
destroy-before-create and the create-before-destroy variants of replacing.
However, this forces the apply graph builder to jump through a lot of
hoops to figure out which nodes need it forced on and rebuild parts of
the graph to represent that.

If we instead decide between these two cases at plan time, the actual
determination of it is more straightforward because each resource is
represented by only one node in the plan graph, and then we can ensure
we put the right nodes in the graph during DiffTransformer and thus avoid
the logic for dealing with deposed instances being spread across various
different transformers and node types.

As a nice side-effect, this also allows us to show the difference between
destroy-then-create and create-then-destroy in the rendered diff in the
CLI, although this change doesn't fully implement that yet.
2018-10-16 19:14:11 -07:00
..
test-fixtures backend: Update interface and implementations for new config loader 2018-10-16 18:39:12 -07:00
backend.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
backend_apply.go command: initial structural diff rendering 2018-10-16 19:14:11 -07:00
backend_apply_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
backend_local.go backend/local: Bail immediately if terraform.Context can't be created 2018-10-16 19:14:11 -07:00
backend_plan.go core: Handle forced-create_before_destroy during the plan walk 2018-10-16 19:14:11 -07:00
backend_plan_test.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
backend_refresh.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
backend_refresh_test.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
backend_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
cli.go backend: Update interface and implementations for new config loader 2018-10-16 18:39:12 -07:00
counthookaction_string.go Update various files for new version of "stringer" 2017-12-11 13:26:29 -08:00
hook_count.go core: Handle forced-create_before_destroy during the plan walk 2018-10-16 19:14:11 -07:00
hook_count_action.go backend/local 2017-01-26 14:33:49 -08:00
hook_count_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
hook_state.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
hook_state_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
local_test.go backend/local 2017-01-26 14:33:49 -08:00
testing.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00