opentofu/terraform
Martin Atkins 9af67806fc core: Prune placeholder objects from state after refresh
Prior to our refactoring here, we were relying on a lucky coincidence for
correct behavior of the plan walk following a refresh in the same run:

- The refresh phase created placeholder objects in the state to represent
  any resource instance pending creation, to allow the interpolator to
  read attributes from them when evaluating "provider" and "data" blocks.
  In effect, the refresh walk is creating a partial plan that only covers
  creation actions, but was immediately discarding the actual diff entries
  and storing only the planned new state.

- It happened that objects pending creation showed up in state with an
  empty ID value, since that only gets assigned by the provider during
  apply.

- The Refresh function concluded by calling terraform.State.Prune, which
  deletes from the state any objects that have an empty ID value, which
  therefore prevented these temporary objects from surviving into the
  plan phase.

After refactoring, we no longer have this special ID field on instance
object state, and we instead rely on the Status field for tracking such
things. We also no longer have an explicit "prune" step on state, since
the state mutation methods themselves keep the structure pruned.

To address this, here we introduce a new instance object status "planned",
which is equivalent to having an empty ID value in the old world. We also
introduce a new method on states.SyncState that deletes from the state
any planned objects, which therefore replaces that portion of the old
State.prune operation just for this refresh use-case.

Finally, we are now expecting the expression evaluator to pull pending
objects from the planned changeset rather than from the state directly,
and so for correct results these placeholder resource creation changes
must also be reported in a throwaway changeset during the refresh walk.

The addition of states.ObjectPlanned also permits a previously-missing
safety check in the expression evaluator to prevent us from relying on the
incomplete value stored in state for a pending object, in the event that
some bug prevents the real pending object from being written into the
planned changeset.
2018-10-16 19:14:11 -07:00
..
test-fixtures terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
context_apply_test.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
context_components_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
context_components.go ResourceProvisioner to provisioners.Interface 2018-10-16 19:11:09 -07:00
context_fixtures_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
context_graph_type.go core: Remove machinery for the "input" walk 2018-10-16 18:49:20 -07:00
context_import_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
context_import.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
context_input_test.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
context_input.go core: Context.Input as config walk, rather than graph walk 2018-10-16 18:49:20 -07:00
context_plan_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
context_refresh_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
context_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
context_validate_test.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
context.go core: Prune placeholder objects from state after refresh 2018-10-16 19:14:11 -07:00
diff_test.go core: Get tests compiling again 2018-10-16 18:46:46 -07:00
diff.go core: fix string rendering of modules in diffs 2018-10-16 18:48:28 -07:00
edge_destroy.go terraform: starting CBD, destroy edge for the destroy relationship 2016-10-19 13:38:52 -07:00
eval_apply.go core: Fix error reporting for malformed provider response values 2018-10-16 19:14:11 -07:00
eval_check_prevent_destroy.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
eval_context_builtin_test.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
eval_context_builtin.go ResourceProvisioner to provisioners.Interface 2018-10-16 19:11:09 -07:00
eval_context_mock.go ResourceProvisioner to provisioners.Interface 2018-10-16 19:11:09 -07:00
eval_context.go ResourceProvisioner to provisioners.Interface 2018-10-16 19:11:09 -07:00
eval_count_boundary.go core: Update EvalCountFixZeroOneBoundaryGlobal for new state types 2018-10-16 19:14:11 -07:00
eval_count_computed.go terraform: detect compute counts and show a nicer error 2016-11-11 11:07:17 -08:00
eval_count.go core: Update EvalCountFixZeroOneBoundaryGlobal for new state types 2018-10-16 19:14:11 -07:00
eval_diff_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
eval_diff.go core: Prune placeholder objects from state after refresh 2018-10-16 19:14:11 -07:00
eval_error.go core: [refactor] store Deposed resource instances as a list 2015-03-04 12:25:59 -06:00
eval_filter_operation.go terraform: clean up EvalNodes 2015-02-19 12:08:32 -08:00
eval_filter.go terraform: more eval stuff 2015-02-19 12:07:54 -08:00
eval_if.go core: [refactor] pull Deposed out of Tainted list 2015-03-04 12:25:47 -06:00
eval_import_state.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
eval_lang.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
eval_local_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
eval_local.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
eval_noop.go terraform: clean up EvalNodes 2015-02-19 12:08:32 -08:00
eval_output_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
eval_output.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
eval_provider_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
eval_provider.go first step in core provider type replacement 2018-10-16 19:11:09 -07:00
eval_provisioner_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
eval_provisioner.go ResourceProvisioner to provisioners.Interface 2018-10-16 19:11:09 -07:00
eval_read_data.go core: Re-implement EvalReadDataApply against new provider interface 2018-10-16 19:14:11 -07:00
eval_refresh.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
eval_sequence_test.go terraform: Refresh, Read/Write state 2015-02-19 12:08:00 -08:00
eval_sequence.go core: EvalSequence to handle EvalEarlyExitError 2018-10-16 18:49:20 -07:00
eval_state_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
eval_state.go core: Extra TRACE logging in the eval_state.go eval nodes. 2018-10-16 19:14:11 -07:00
eval_test.go terraform: clean up EvalNodes 2015-02-19 12:08:32 -08:00
eval_validate_selfref_test.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
eval_validate_selfref.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
eval_validate_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
eval_validate.go terraform: Return validation diagnostics with source info where possible 2018-10-16 19:14:11 -07:00
eval_variable.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
eval.go core: EvalSequence must continue when only warnings are returned 2018-10-16 18:49:20 -07:00
evaltree_provider.go first step in core provider type replacement 2018-10-16 19:11:09 -07:00
evaluate_test.go core: Get tests compiling again 2018-10-16 18:46:46 -07:00
evaluate.go core: Prune placeholder objects from state after refresh 2018-10-16 19:14:11 -07:00
features.go output warning flag 2017-11-28 14:18:54 -05:00
graph_builder_apply_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
graph_builder_apply.go core: Update EvalCountFixZeroOneBoundaryGlobal for new state types 2018-10-16 19:14:11 -07:00
graph_builder_destroy_plan.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
graph_builder_eval.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
graph_builder_import.go core: Don't create indirect provider dependencies for references 2018-10-16 18:49:20 -07:00
graph_builder_plan_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
graph_builder_plan.go core: Update EvalCountFixZeroOneBoundaryGlobal for new state types 2018-10-16 19:14:11 -07:00
graph_builder_refresh_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
graph_builder_refresh.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
graph_builder_test.go core: Get tests compiling again 2018-10-16 18:46:46 -07:00
graph_builder_validate.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
graph_builder.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
graph_dot_test.go terraform: remove ConnectDependents and related interfaces 2017-02-03 14:25:54 +01:00
graph_dot.go Remove dot package 2016-11-14 08:50:34 -05:00
graph_interface_subgraph.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
graph_test.go core: Remove GraphWalkerPanicwrap, etc 2018-10-16 18:48:28 -07:00
graph_walk_context.go core: Evaluate resource references from plan where possible 2018-10-16 19:14:11 -07:00
graph_walk_operation.go core: Remove machinery for the "input" walk 2018-10-16 18:49:20 -07:00
graph_walk_test.go terraform: trying this graphwalker thing 2015-02-19 12:07:56 -08:00
graph_walk.go core: Remove GraphWalkerPanicwrap, etc 2018-10-16 18:48:28 -07:00
graph.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
graphtype_string.go core: update Stringer implementations for GraphType and walkOperation 2018-10-16 18:49:20 -07:00
hook_mock.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
hook_stop_test.go terraform: stopHook and tests 2014-07-02 16:16:38 -07:00
hook_stop.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
hook_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
hook.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
instancetype_string.go Update various files for new version of "stringer" 2017-12-11 13:26:29 -08:00
instancetype.go core: formalize resource addressing 2015-03-31 15:04:10 -05:00
interpolate.go core: Remove machinery for the "input" walk 2018-10-16 18:49:20 -07:00
module_dependencies_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
module_dependencies.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
node_count_boundary.go core: Update EvalCountFixZeroOneBoundaryGlobal for new state types 2018-10-16 19:14:11 -07:00
node_data_destroy.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
node_data_refresh_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
node_data_refresh.go core: Re-implement EvalReadDataApply against new provider interface 2018-10-16 19:14:11 -07:00
node_local.go core: Local and output values must reference destroy nodes too 2018-10-16 18:49:20 -07:00
node_module_removed.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
node_module_variable_test.go core: Update TestNodeApplyableModuleVariablePath for new address type 2018-10-16 18:48:28 -07:00
node_module_variable.go core: Remove machinery for the "input" walk 2018-10-16 18:49:20 -07:00
node_output_orphan.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
node_output.go core: Remove machinery for the "input" walk 2018-10-16 18:49:20 -07:00
node_provider_abstract.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
node_provider_disabled.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
node_provider_eval.go core: Context.Eval method 2018-10-16 18:46:46 -07:00
node_provider.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
node_provisioner.go core: NodeProvisioner.Name update for new address types 2018-10-16 18:48:28 -07:00
node_resource_abstract.go core: StateReferences method should return []addrs.Referenceable 2018-10-16 19:14:11 -07:00
node_resource_apply.go core: StateReferences method should return []addrs.Referenceable 2018-10-16 19:14:11 -07:00
node_resource_destroy_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
node_resource_destroy.go core: Re-implement EvalReadDataApply against new provider interface 2018-10-16 19:14:11 -07:00
node_resource_plan_destroy.go core: Re-implement EvalWriteDiff to work with new plan types 2018-10-16 19:14:11 -07:00
node_resource_plan_instance.go core: StateReferences method should return []addrs.Referenceable 2018-10-16 19:14:11 -07:00
node_resource_plan_orphan.go core: Re-implement EvalWriteDiff to work with new plan types 2018-10-16 19:14:11 -07:00
node_resource_plan.go core: Update EvalCountFixZeroOneBoundaryGlobal for new state types 2018-10-16 19:14:11 -07:00
node_resource_refresh_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
node_resource_refresh.go core: Prune placeholder objects from state after refresh 2018-10-16 19:14:11 -07:00
node_resource_validate.go ResourceProvisioner to provisioners.Interface 2018-10-16 19:11:09 -07:00
node_root_variable.go core: render variables, locals and outputs nicely in "terraform graph" 2018-10-16 18:46:46 -07:00
path.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
plan.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
provider_mock.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
provisioner_mock.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
resource_address_test.go configs: Re-unify the ManagedResource and DataResource types 2018-10-16 18:44:26 -07:00
resource_address.go core: NewLegacyResourceInstanceAddress correct handling of addrs.NoKey 2018-10-16 18:46:46 -07:00
resource_provider_mock_test.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
resource_provider_mock.go minor race issue in mockResourceProvider 2017-12-20 09:18:38 -05:00
resource_provider.go first step in core provider type replacement 2018-10-16 19:11:09 -07:00
resource_provisioner_mock_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
resource_provisioner_mock.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
resource_provisioner.go ResourceProvisioner to provisioners.Interface 2018-10-16 19:11:09 -07:00
resource_test.go core: check for negative indices in ResourceConfig.get 2017-12-12 09:18:38 -08:00
resource.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
schemas_test.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
schemas.go core: Re-implement ReadDataDiff around our new approach 2018-10-16 19:14:11 -07:00
semantics_test.go core: fix tests for checkInputVariables 2018-10-16 18:48:28 -07:00
semantics.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
state_add_test.go Set proper Mode when moving a data source in state 2016-11-21 18:26:29 -05:00
state_add.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
state_filter_test.go terraform: StateFilter handles cases where ResourceState has no type 2017-01-21 10:24:03 -08:00
state_filter.go fix sorting of module resources during state mv 2017-02-23 18:27:16 -05:00
state_test.go core: TestStateAddModule old-style output 2018-10-16 18:48:28 -07:00
state_upgrade_v1_to_v2.go terraform: convert empty path to root path in V1 state 2017-03-21 11:37:12 -07:00
state_upgrade_v2_to_v3.go terraform: V1 to V2 upgrade should treat nil path as root path 2017-03-21 11:12:44 -07:00
state_v1.go core: Introduce state v3 and upgrade process 2016-06-09 10:49:49 +01:00
state.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
terraform_test.go replace provider and provisioner types in tests 2018-10-16 19:11:09 -07:00
testing.go terraform: support backends in the state 2017-01-26 14:33:49 -08:00
transform_attach_config_provider.go core: Attach resource and provider config schemas during graph build 2018-10-16 18:46:46 -07:00
transform_attach_config_resource.go core: Additional trace logging in attach resource config transformer 2018-10-16 18:48:28 -07:00
transform_attach_schema.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
transform_attach_state.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_config_flat_test.go core: Get tests compiling again 2018-10-16 18:46:46 -07:00
transform_config_flat.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
transform_config_old.go terraform: remove config transformer old 2017-01-26 19:57:46 -08:00
transform_config_test.go core: Get tests compiling again 2018-10-16 18:46:46 -07:00
transform_config.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
transform_count_boundary.go core: Update EvalCountFixZeroOneBoundaryGlobal for new state types 2018-10-16 19:14:11 -07:00
transform_deposed.go core: Re-implement EvalReadDiff for the new plan types 2018-10-16 19:14:11 -07:00
transform_destroy_cbd_test.go core: Fetch schemas during context construction 2018-10-16 18:49:20 -07:00
transform_destroy_cbd.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_destroy_edge_test.go core: Fetch schemas during context construction 2018-10-16 18:49:20 -07:00
transform_destroy_edge.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_diff_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_diff.go core: Properly handle no-op changes in plan 2018-10-16 19:14:11 -07:00
transform_expand_test.go implement dag.Subgrapher interface 2016-11-14 08:50:34 -05:00
transform_expand.go terraform: more dead code removal 2017-01-26 19:47:02 -08:00
transform_import_provider.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
transform_import_state.go terraform: More wiring in of new provider types 2018-10-16 19:12:54 -07:00
transform_local.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
transform_module_variable_test.go core: Get tests compiling again 2018-10-16 18:46:46 -07:00
transform_module_variable.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
transform_orphan_count_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_orphan_count.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_orphan_output.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_orphan_resource_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_orphan_resource.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_output.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
transform_provider_test.go core: Update ProviderTransformer tests for new ImportTarget interface 2018-10-16 18:48:28 -07:00
transform_provider.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_provisioner_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_provisioner.go core: Make provisioner schemas available to plan resource instance nodes 2018-10-16 18:49:20 -07:00
transform_reference_test.go core: Fix ReferenceTransformer tests 2018-10-16 18:48:28 -07:00
transform_reference.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_removed_modules.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_resource_count.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
transform_root_test.go core: NodeAbstractResource correct default result from ProvidedBy 2018-10-16 18:48:28 -07:00
transform_root.go terraform: provider transform is converted to new graph world view 2017-01-26 20:58:22 -08:00
transform_state.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
transform_targets_test.go core: Get tests compiling again 2018-10-16 18:46:46 -07:00
transform_targets.go don't check for targeted downstream from providers 2018-10-16 18:49:20 -07:00
transform_transitive_reduction_test.go move "configschema" from "config" to "configs" 2018-10-16 18:50:29 -07:00
transform_transitive_reduction.go terraform: add TransitiveReductionTransformer 2015-02-27 19:18:04 -08:00
transform_variable.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
transform_vertex_test.go terraform: GraphVertexTransformers 2015-02-19 12:07:57 -08:00
transform_vertex.go terraform: GraphVertexTransformers 2015-02-19 12:07:57 -08:00
transform.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
ui_input_mock.go terraform: Input() asks for variable inputs 2014-09-28 23:37:36 -07:00
ui_input_prefix_test.go terraform: prefix the Id for configuring providers 2014-09-29 10:36:49 -07:00
ui_input_prefix.go terraform: Make output more machine-like 2014-09-29 12:52:48 -07:00
ui_input.go helper/scheam: support UI defaults 2014-09-29 14:00:35 -07:00
ui_output_callback_test.go terraform: provisioners 2015-02-19 12:08:06 -08:00
ui_output_callback.go terraform: provisioners 2015-02-19 12:08:06 -08:00
ui_output_mock_test.go terraform: UIOutput interface 2014-10-04 09:00:07 -07:00
ui_output_mock.go minor race fix in tests 2017-10-02 16:19:01 -04:00
ui_output_provisioner_test.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
ui_output_provisioner.go terraform: Ugly huge change to weave in new State and Plan types 2018-10-16 19:11:09 -07:00
ui_output.go terraform: UIOutput interface 2014-10-04 09:00:07 -07:00
upgrade_state_v1_test.go Fix swallowed tests in terraform package tests 2017-07-20 02:23:43 -07:00
upgrade_state_v2_test.go core: Add test for V2->V3 state upgrade 2016-06-09 11:16:34 +01:00
user_agent.go Standardize http.Client creation with User-Agent 2018-02-28 12:09:50 -05:00
util_test.go Resolve resource provider types in config package 2017-06-09 14:03:59 -07:00
util.go Resolve resource provider types in config package 2017-06-09 14:03:59 -07:00
valuesourcetype_string.go core: Context.Eval method 2018-10-16 18:46:46 -07:00
variables_test.go core: fix the tests in variables_test.go 2018-10-16 18:48:28 -07:00
variables.go core: fix the tests in variables_test.go 2018-10-16 18:48:28 -07:00
version_required.go terraform: ugly huge change to weave in new HCL2-oriented types 2018-10-16 18:46:46 -07:00
version.go use the new version package 2017-10-19 21:48:08 -04:00
walkoperation_string.go core: update Stringer implementations for GraphType and walkOperation 2018-10-16 18:49:20 -07:00