terraform/terraform
Martin Atkins ba0514106a return tfdiags.Diagnostics from validation methods
Validation is the best time to return detailed diagnostics
to the user since we're much more likely to have source
location information, etc than we are in later operations.

This change doesn't actually add any detail to the messages
yet, but it changes the interface so that we can gradually
introduce more detailed diagnostics over time.

While here there are some minor adjustments to some of the
messages to improve their consistency with terminology we
use elsewhere.
2017-11-28 11:15:29 -08:00
..
test-fixtures remove module referencing existing provider 2017-11-07 22:05:52 -05:00
context.go return tfdiags.Diagnostics from validation methods 2017-11-28 11:15:29 -08:00
context_apply_test.go return tfdiags.Diagnostics from validation methods 2017-11-28 11:15:29 -08:00
context_components.go
context_graph_type.go terraform: wip moving validation to new graph 2017-01-25 12:28:07 -08:00
context_import.go core: remove shadow graph infrastructure 2017-08-28 08:40:22 -07:00
context_import_test.go write provider to state for import nodes 2017-11-07 21:05:37 -05:00
context_input_test.go rewrite all of the test state string for providers 2017-11-07 13:49:43 -05:00
context_plan_test.go return tfdiags.Diagnostics from validation methods 2017-11-28 11:15:29 -08:00
context_refresh_test.go return tfdiags.Diagnostics from validation methods 2017-11-28 11:15:29 -08:00
context_test.go write provider to state for refresh nodes 2017-11-07 21:05:28 -05:00
context_validate_test.go return tfdiags.Diagnostics from validation methods 2017-11-28 11:15:29 -08:00
debug.go terraform: fix compilation by complying with interface 2017-01-20 20:45:06 -08:00
debug_test.go Update tests for the new ProviderResolver interface 2017-06-09 14:03:59 -07:00
diff.go core: don't compare attribute values in Diff.Same 2017-11-03 16:11:13 -07:00
diff_test.go core: don't compare attribute values in Diff.Same 2017-11-03 16:11:13 -07:00
edge_destroy.go terraform: starting CBD, destroy edge for the destroy relationship 2016-10-19 13:38:52 -07:00
eval.go terraform+dag: Set lower log levels 2017-08-14 11:43:45 +02:00
eval_apply.go core: don't advertise data source destroy via hooks 2017-09-01 17:55:05 -07:00
eval_check_prevent_destroy.go terraform: prevent_destroy works for decreasing count 2016-10-28 21:31:47 -04:00
eval_context.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
eval_context_builtin.go pass providers into modules via config 2017-11-06 21:57:06 -05:00
eval_context_builtin_test.go
eval_context_mock.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
eval_count.go
eval_count_boundary.go terraform: new graph fixes ".0" and "" boundaries on counts 2016-10-19 13:38:52 -07:00
eval_count_computed.go terraform: detect compute counts and show a nicer error 2016-11-11 11:07:17 -08:00
eval_diff.go use the new version package 2017-10-19 21:48:08 -04:00
eval_diff_test.go
eval_error.go
eval_filter.go
eval_filter_operation.go
eval_if.go
eval_import_state.go
eval_interpolate.go use the inherited provider configs in the graph 2017-10-27 09:08:15 -04:00
eval_interpolate_test.go
eval_local.go don't evaluate locals during destroy 2017-09-28 12:56:25 -04:00
eval_local_test.go core: evaluate locals and return them for interpolation 2017-08-21 15:15:25 -07:00
eval_noop.go
eval_output.go enable output errors in dev branch 2017-10-27 09:13:52 -04:00
eval_output_test.go
eval_provider.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
eval_provider_test.go only cache Input "answers", always call Input 2017-10-27 09:08:15 -04:00
eval_provisioner.go
eval_provisioner_test.go
eval_read_data.go
eval_refresh.go
eval_resource.go
eval_sequence.go terraform: don't validate computed values in validate 2017-01-27 21:15:43 -08:00
eval_sequence_test.go
eval_state.go remove modules from state 2017-11-08 19:11:53 -05:00
eval_state_test.go
eval_test.go
eval_validate.go Detect and reject unknown attributes in "connection" blocks 2017-04-06 13:46:43 -07:00
eval_validate_selfref.go terraform: validate self references 2017-01-25 21:00:45 -08:00
eval_validate_selfref_test.go terraform: validate self references 2017-01-25 21:00:45 -08:00
eval_validate_test.go Detect and reject unknown attributes in "connection" blocks 2017-04-06 13:46:43 -07:00
eval_variable.go core: EvalVariableBlock to decode maps and slices more carefully 2017-04-07 17:05:14 -07:00
eval_variable_test.go core: basic test of EvalVariableBlock 2017-04-04 12:16:19 -07:00
evaltree_provider.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
features.go enable output errors in dev branch 2017-10-27 09:13:52 -04:00
graph.go terraform+dag: Set lower log levels 2017-08-14 11:43:45 +02:00
graph_builder.go terraform: remove legacy graph builder 2017-01-26 15:18:42 -08:00
graph_builder_apply.go run RemovedModuleTransformer before References 2017-11-09 10:34:56 -05:00
graph_builder_apply_test.go udpate test graph outputs 2017-11-02 15:29:51 -04:00
graph_builder_destroy_plan.go terraform: new Graph API that can return the graph for each op 2016-12-02 22:56:22 -05:00
graph_builder_import.go group the provider transformations 2017-11-02 15:00:06 -04:00
graph_builder_input.go use an EvalOpFilter for module variables 2017-10-02 16:20:29 -04:00
graph_builder_plan.go run RemovedModuleTransformer before References 2017-11-09 10:34:56 -05:00
graph_builder_plan_test.go core: graph nodes and edges for local values 2017-08-21 15:15:25 -07:00
graph_builder_refresh.go group the provider transformations 2017-11-02 15:00:06 -04:00
graph_builder_refresh_test.go core: Test for new refresh graph behaviour 2017-05-12 15:45:06 -07:00
graph_builder_test.go terraform: remove legacy graph builder 2017-01-26 15:18:42 -08:00
graph_builder_validate.go terraform: expand count on resources during validation 2017-01-25 12:39:08 -08:00
graph_dot.go Remove dot package 2016-11-14 08:50:34 -05:00
graph_dot_test.go terraform: remove ConnectDependents and related interfaces 2017-02-03 14:25:54 +01:00
graph_interface_subgraph.go
graph_test.go terraform: remove ConnectDependents and related interfaces 2017-02-03 14:25:54 +01:00
graph_walk.go Replace DebugGraphs with the Graph's methods 2016-11-14 08:52:18 -05:00
graph_walk_context.go remove commented out fields 2017-11-07 10:15:11 -05:00
graph_walk_operation.go
graph_walk_test.go
graphtype_string.go Fix stringer comments (#15069) 2017-06-05 10:17:35 +01:00
hook.go terraform: PostProvision hook gets the error from the provision step 2017-01-20 20:21:12 -08:00
hook_mock.go terraform: PostProvision hook gets the error from the provision step 2017-01-20 20:21:12 -08:00
hook_stop.go terraform: PostProvision hook gets the error from the provision step 2017-01-20 20:21:12 -08:00
hook_stop_test.go
hook_test.go core: add testHook for testing correct interaction with hooks 2017-09-01 17:55:05 -07:00
instancetype.go
instancetype_string.go Fix stringer comments (#15069) 2017-06-05 10:17:35 +01:00
interpolate.go core: evaluate locals and return them for interpolation 2017-08-21 15:15:25 -07:00
interpolate_test.go core: evaluate locals and return them for interpolation 2017-08-21 15:15:25 -07:00
module_dependencies.go Rename VersionSet to Constraints 2017-06-09 14:03:59 -07:00
module_dependencies_test.go udpate test graph outputs 2017-11-02 15:29:51 -04:00
node_count_boundary.go terraform: new graph fixes ".0" and "" boundaries on counts 2016-10-19 13:38:52 -07:00
node_data_destroy.go terraform: data source on refresh should just delete from state 2017-02-03 20:58:03 +01:00
node_data_refresh.go write providers to state for data resources 2017-11-07 21:05:21 -05:00
node_data_refresh_test.go Fix swallowed tests in terraform package tests 2017-07-20 02:23:43 -07:00
node_local.go don't evaluate locals during destroy 2017-09-28 12:56:25 -04:00
node_module_removed.go make NodeModuleRemoved a GraphNodeReferencer 2017-11-09 10:30:55 -05:00
node_module_variable.go use an EvalOpFilter for module variables 2017-10-02 16:20:29 -04:00
node_module_variable_test.go terraform: tests for module variable node 2016-10-19 13:38:51 -07:00
node_output.go continue on output errors during Input 2017-10-02 16:20:29 -04:00
node_output_orphan.go make NodeOutputOrphan referenceable 2017-11-09 10:52:46 -05:00
node_provider.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
node_provider_abstract.go save resolved providers for resources to state 2017-11-07 13:09:36 -05:00
node_provider_disabled.go cleanup 2017-10-27 09:08:15 -04:00
node_provisioner.go terraform: new provisioner node 2017-01-26 21:02:55 -08:00
node_resource_abstract.go ProvidedBy return value is a single string 2017-11-06 14:27:01 -05:00
node_resource_abstract_count.go terraform: don't validate computed values in validate 2017-01-27 21:15:43 -08:00
node_resource_apply.go save resolved providers for resources to state 2017-11-07 13:09:36 -05:00
node_resource_destroy.go write provider to state for refresh nodes 2017-11-07 21:05:28 -05:00
node_resource_destroy_test.go terraform: Destroy node should only include deposed for specific index 2016-11-29 09:16:18 -08:00
node_resource_plan.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
node_resource_plan_destroy.go terraform: Destroy node should only include deposed for specific index 2016-11-29 09:16:18 -08:00
node_resource_plan_instance.go save resolved providers for resources to state 2017-11-07 13:09:36 -05:00
node_resource_plan_orphan.go terraform: Destroy node should only include deposed for specific index 2016-11-29 09:16:18 -08:00
node_resource_refresh.go write provider to state for refresh nodes 2017-11-07 21:05:28 -05:00
node_resource_refresh_test.go Fix swallowed tests in terraform package tests 2017-07-20 02:23:43 -07:00
node_resource_validate.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
node_root_variable.go terraform: RootVariableTransform 2016-10-19 13:38:51 -07:00
path.go reverse the merge order for cached provider Input 2017-10-27 09:08:15 -04:00
plan.go use the new version package 2017-10-19 21:48:08 -04:00
plan_test.go Add warning to mismatched plan state 2017-07-17 10:41:29 -04:00
resource.go command: show resource actions using resource addresses 2017-09-01 17:55:05 -07:00
resource_address.go optimization:Merge slices 2017-09-13 21:08:41 +08:00
resource_address_test.go core: stabilize ResourceAddress.Less results 2017-09-01 17:55:05 -07:00
resource_provider.go core: terraform.ResourceProvider.GetSchema method 2017-10-17 07:23:41 -07:00
resource_provider_mock.go core: terraform.ResourceProvider.GetSchema method 2017-10-17 07:23:41 -07:00
resource_provider_mock_test.go
resource_provisioner.go terraform: switch to Context for stop, Stoppable provisioners 2017-01-26 15:03:27 -08:00
resource_provisioner_mock.go terraform: switch to Context for stop, Stoppable provisioners 2017-01-26 15:03:27 -08:00
resource_provisioner_mock_test.go
resource_test.go command: show resource actions using resource addresses 2017-09-01 17:55:05 -07:00
schemas.go core: terraform.ResourceProvider.GetSchema method 2017-10-17 07:23:41 -07:00
semantics.go terraform: remove GraphNodeModule 2017-01-26 20:01:39 -08:00
semantics_test.go terraform: user friendly error when using old map overrides 2016-12-09 15:58:24 -05:00
state.go replacing orphaned with removed 2017-11-08 22:10:43 -05:00
state_add.go Set proper Mode when moving a data source in state 2016-11-21 18:26:29 -05:00
state_add_test.go Set proper Mode when moving a data source in state 2016-11-21 18:26:29 -05:00
state_filter.go fix sorting of module resources during state mv 2017-02-23 18:27:16 -05:00
state_filter_test.go terraform: StateFilter handles cases where ResourceState has no type 2017-01-21 10:24:03 -08:00
state_test.go Merge pull request #15448 from hashicorp/jbardin/state-meta-equal 2017-08-30 16:00:00 -04: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_v1_to_v2_test.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
terraform_test.go remove modules from state 2017-11-08 19:11:53 -05:00
test_failure Rename VersionSet to Constraints 2017-06-09 14:03:59 -07:00
testing.go terraform: support backends in the state 2017-01-26 14:33:49 -08:00
transform.go add transform step logs from GraphTransformMulti 2017-11-02 16:38:32 -04:00
transform_attach_config_provider.go pass providers into modules via config 2017-11-06 21:57:06 -05:00
transform_attach_config_resource.go terraform: enable shadow graph and destroy resource mode with addr 2016-10-22 12:12:30 -07:00
transform_attach_state.go terraform: passing test for destroy edge for module only 2017-02-07 19:12:03 -08:00
transform_config.go pass providers into modules via config 2017-11-06 21:57:06 -05:00
transform_config_flat.go terraform: CBD makes the proper edge connections for dependent resources 2016-10-19 13:38:53 -07:00
transform_config_flat_test.go terraform: FlatConfigTransformer 2016-10-19 13:38:53 -07:00
transform_config_old.go terraform: remove config transformer old 2017-01-26 19:57:46 -08:00
transform_config_test.go terraform: ConfigTransformer has Unique and mode filters 2017-01-22 12:58:18 -08:00
transform_count_boundary.go terraform: new graph fixes ".0" and "" boundaries on counts 2016-10-19 13:38:52 -07:00
transform_deposed.go save resolved providers for resources to state 2017-11-07 13:09:36 -05:00
transform_destroy_cbd.go terraform: CBD edge should ignore "index" 2017-02-07 10:53:12 -08:00
transform_destroy_cbd_test.go terraform: CBD edge should ignore "index" 2017-02-07 10:53:12 -08:00
transform_destroy_edge.go group the provider transformations 2017-11-02 15:00:06 -04:00
transform_destroy_edge_test.go terraform: passing test for destroy edge for module only 2017-02-07 19:12:03 -08:00
transform_diff.go terraform: new apply graph understands destroying deposed only 2016-11-28 14:34:24 -08:00
transform_diff_test.go terraform: remove diff transformer test that no longer happens 2016-10-19 13:38:52 -07:00
transform_expand.go terraform: more dead code removal 2017-01-26 19:47:02 -08:00
transform_expand_test.go implement dag.Subgrapher interface 2016-11-14 08:50:34 -05:00
transform_import_provider.go terraform: verify import providers only depend on vars 2016-11-09 15:09:13 -08:00
transform_import_state.go write provider to state for import nodes 2017-11-07 21:05:37 -05:00
transform_local.go core: graph nodes and edges for local values 2017-08-21 15:15:25 -07:00
transform_module_variable.go use an EvalOpFilter for module variables 2017-10-02 16:20:29 -04:00
transform_module_variable_test.go terraform: module variables should be pruned if nothing depends on them 2016-11-04 18:58:03 -07:00
transform_orphan_count.go terraform: fix a typo found during review 2016-11-09 08:10:09 -08:00
transform_orphan_count_test.go terraform: proper "what to orphan" on zero/one boundary logic 2016-11-08 13:59:29 -08:00
transform_orphan_output.go replacing orphaned with removed 2017-11-08 22:10:43 -05:00
transform_orphan_resource.go terraform: don't prune state on init() 2016-12-02 11:48:34 -05:00
transform_orphan_resource_test.go terraform: don't prune state on init() 2016-12-02 11:48:34 -05:00
transform_output.go terraform: get tests to not panic on failures 2016-10-19 13:38:51 -07:00
transform_provider.go normalize missing provider names 2017-11-14 15:53:37 -05:00
transform_provider_test.go complete passing providers through modules 2017-11-07 09:41:57 -05:00
transform_provisioner.go terraform: remove flatten, forever 2017-01-26 21:03:27 -08:00
transform_provisioner_test.go terraform: new provisioner node 2017-01-26 21:02:55 -08:00
transform_reference.go fix References used by the ReferenceTransformer 2017-11-09 10:36:42 -05:00
transform_reference_test.go terraform: tests for ReferenceMap for module paths 2016-11-12 08:24:09 -08:00
transform_removed_modules.go only add nodes in RemovedModuleTransformer 2017-11-09 10:32:01 -05:00
transform_resource_count.go WIP reference providers by full name 2017-11-02 15:00:06 -04:00
transform_root.go terraform: provider transform is converted to new graph world view 2017-01-26 20:58:22 -08:00
transform_root_test.go terraform: convert root transform test to use new config transform 2017-01-26 19:40:46 -08:00
transform_state.go terraform: implement destroy planning basics from state 2016-10-22 12:12:29 -07:00
transform_targets.go remove broken outputs from targeted graph 2017-10-02 16:20:29 -04:00
transform_targets_test.go core: Allow downstream targeting of certain node types 2017-05-11 11:57:46 -07:00
transform_transitive_reduction.go
transform_transitive_reduction_test.go terraform: convert all tests to use the new config transformer 2017-01-26 19:56:16 -08:00
transform_variable.go terraform: RootVariableTransform 2016-10-19 13:38:51 -07:00
transform_vertex.go
transform_vertex_test.go
ui_input.go
ui_input_mock.go
ui_input_prefix.go
ui_input_prefix_test.go
ui_output.go
ui_output_callback.go
ui_output_callback_test.go
ui_output_mock.go minor race fix in tests 2017-10-02 16:19:01 -04:00
ui_output_mock_test.go
ui_output_provisioner.go
ui_output_provisioner_test.go
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
user_agent.go use the new version package 2017-10-19 21:48:08 -04:00
util.go Resolve resource provider types in config package 2017-06-09 14:03:59 -07:00
util_test.go Resolve resource provider types in config package 2017-06-09 14:03:59 -07:00
variables.go Return an error for setting a non-map to a map 2016-11-17 11:10:43 -05:00
variables_test.go Add failing test for GH-10155 2016-11-16 18:20:59 -05:00
version.go use the new version package 2017-10-19 21:48:08 -04:00
version_required.go use the new version package 2017-10-19 21:48:08 -04:00
walkoperation_string.go Fix stringer comments (#15069) 2017-06-05 10:17:35 +01:00