terraform/command/testdata
Martin Atkins 3c8a4e6e05 command+backend/local: -refresh-only and drift detection
This is a light revamp of our plan output to make use of Terraform core's
new ability to report both the previous run state and the refreshed state,
allowing us to explicitly report changes made outside of Terraform.

Because whether a plan has "changes" or not is no longer such a
straightforward matter, this now merges views.Operation.Plan with
views.Operation.PlanNoChanges to produce a single function that knows how
to report all of the various permutations. This was also an opportunity
to fill some holes in our previous logic which caused it to produce some
confusing messages, including a new tailored message for when
"terraform destroy" detects that nothing needs to be destroyed.

This also allows users to request the refresh-only planning mode using a
new -refresh-only command line option. In that case, Terraform _only_
performs drift detection, and so applying a refresh-only plan only
involves writing a new state snapshot, without changing any real
infrastructure objects.
2021-05-13 09:05:06 -07:00
..
apply command+backend/local: -refresh-only and drift detection 2021-05-13 09:05:06 -07:00
apply-config-invalid Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-destroy-targeted cli: Improve error for invalid -target flags 2021-02-08 13:48:04 -05:00
apply-error Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-input Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-input-partial Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-plan-no-module Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-replace command: New -replace=... planning option 2021-05-03 15:43:23 -07:00
apply-sensitive-output Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-shutdown Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-targeted cli: Improve error for invalid -target flags 2021-02-08 13:48:04 -05:00
apply-terraform-env Standardise directory name for test data 2019-06-30 10:16:15 +02:00
apply-vars fix command tests 2020-08-07 14:13:57 -04:00
backend-change refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-change-multi-default-to-single refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-change-multi-to-multi refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-change-multi-to-no-default-with-default refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-change-multi-to-no-default-without-default refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-change-multi-to-single refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-change-single-to-single refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-changed-with-legacy refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-from-state command: use backend config from state when backend=false is used. (#23802) 2020-01-07 15:07:06 -05:00
backend-inmem-locked Standardise directory name for test data 2019-06-30 10:16:15 +02:00
backend-new Standardise directory name for test data 2019-06-30 10:16:15 +02:00
backend-new-interp Standardise directory name for test data 2019-06-30 10:16:15 +02:00
backend-new-legacy refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-new-migrate refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-new-migrate-existing refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-plan-backend-empty Standardise directory name for test data 2019-06-30 10:16:15 +02:00
backend-plan-backend-empty-config refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-plan-backend-match refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-plan-backend-mismatch refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-plan-legacy Standardise directory name for test data 2019-06-30 10:16:15 +02:00
backend-plan-legacy-data refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-plan-local Standardise directory name for test data 2019-06-30 10:16:15 +02:00
backend-plan-local-match refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-plan-local-mismatch-lineage refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-plan-local-newer refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-unchanged refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-unchanged-with-legacy refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-unset refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
backend-unset-with-legacy refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
empty Standardise directory name for test data 2019-06-30 10:16:15 +02:00
fmt cli: Fix fmt output for multi-line value exprs 2021-03-25 15:40:54 -04:00
get Standardise directory name for test data 2019-06-30 10:16:15 +02:00
graph Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-missing-resource-config Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-module-input-variable terraform: Eval module call arguments for import 2020-08-17 17:14:12 -04:00
import-module-var-file reproduction test 2020-06-12 15:39:55 -04:00
import-provider Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-provider-aliased Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-provider-datasource command/import: attach references before validating provider (#22862) 2020-02-12 14:00:08 -05:00
import-provider-implicit Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-provider-invalid command: Fix stale lock when exiting early 2020-02-14 14:48:30 -05:00
import-provider-remote-state Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-provider-var Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-provider-var-default Standardise directory name for test data 2019-06-30 10:16:15 +02:00
import-provider-var-file Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-backend Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-backend-config-file command: Fix backend config override validation 2020-08-21 16:21:13 -04:00
init-backend-config-file-change Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-backend-config-kv Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-backend-empty Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-check-required-version terraform: Fix required version constraint diags 2020-08-18 09:35:32 -04:00
init-get Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-get-provider-detected-legacy command/init: Improve diags for legacy providers 2020-06-12 09:57:01 -04:00
init-get-provider-invalid-package command/init: Display provider validation errors 2020-07-07 15:20:20 -04:00
init-get-provider-legacy-from-state command: Better in-house provider install errors 2020-09-01 14:02:19 -04:00
init-get-provider-source command/init: Use full config for provider reqs 2020-05-25 16:50:12 -04:00
init-get-providers vendor: go get github.com/apparentlymart/go-versions@v1.0.0 2020-06-12 08:45:14 -07:00
init-internal Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-internal-invalid internal/providercache: Handle built-in providers 2020-04-06 09:24:23 -07:00
init-legacy-provider-cache command: new cache directory .terraform/providers for providers 2020-10-14 07:53:41 -07:00
init-legacy-rc Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-provider-lock-file Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-provider-lock-file-readonly-add command/init: Add a new flag `-lockfile=readonly` (#27630) 2021-03-09 11:12:00 -05:00
init-providers-lock Standardise directory name for test data 2019-06-30 10:16:15 +02:00
init-required-providers provider source tests: added test suite to exercise hyphenated providers (#24685) 2020-04-16 15:54:33 -04:00
inmem-backend Standardise directory name for test data 2019-06-30 10:16:15 +02:00
login-oauth-server command: Fix OAuth2 PKCE arguments 2020-05-05 09:58:48 -07:00
login-tfe-server Add customized login success output for TFC/E 2021-04-21 21:23:42 -05:00
modules Support reading module outputs in terraform console (#24808) 2020-04-30 09:21:42 -04:00
parallelism Standardise directory name for test data 2019-06-30 10:16:15 +02:00
plan Standardise directory name for test data 2019-06-30 10:16:15 +02:00
plan-emptydiff Standardise directory name for test data 2019-06-30 10:16:15 +02:00
plan-invalid Standardise directory name for test data 2019-06-30 10:16:15 +02:00
plan-out-backend Standardise directory name for test data 2019-06-30 10:16:15 +02:00
plan-out-backend-legacy Standardise directory name for test data 2019-06-30 10:16:15 +02:00
plan-replace command: New -replace=... planning option 2021-05-03 15:43:23 -07:00
plan-vars Standardise directory name for test data 2019-06-30 10:16:15 +02:00
providers command/providers: Show provider requirements tree 2020-06-09 14:21:53 -04:00
providers-schema command/jsonprovider: bump format version (#28115) 2021-03-22 11:45:36 -04:00
push Standardise directory name for test data 2019-06-30 10:16:15 +02:00
push-backend-new Standardise directory name for test data 2019-06-30 10:16:15 +02:00
push-input Standardise directory name for test data 2019-06-30 10:16:15 +02:00
push-input-partial Standardise directory name for test data 2019-06-30 10:16:15 +02:00
push-no-remote Standardise directory name for test data 2019-06-30 10:16:15 +02:00
push-no-upload Standardise directory name for test data 2019-06-30 10:16:15 +02:00
push-tfvars Standardise directory name for test data 2019-06-30 10:16:15 +02:00
refresh Standardise directory name for test data 2019-06-30 10:16:15 +02:00
refresh-empty Standardise directory name for test data 2019-06-30 10:16:15 +02:00
refresh-output Standardise directory name for test data 2019-06-30 10:16:15 +02:00
refresh-targeted cli: Improve error for invalid -target flags 2021-02-08 13:48:04 -05:00
refresh-unset-var Standardise directory name for test data 2019-06-30 10:16:15 +02:00
refresh-var Standardise directory name for test data 2019-06-30 10:16:15 +02:00
show Standardise directory name for test data 2019-06-30 10:16:15 +02:00
show-json command/jsonplan: Add replace_paths 2021-05-04 16:51:51 -04:00
show-json-sensitive core: Add sensitive provider attrs to JSON plan 2021-04-27 10:29:34 -04:00
show-json-state Unmark values before showing in JSON 2020-10-28 15:30:04 -04:00
state-list-backend-custom addrs: embed Provider in AbsProviderConfig instead of Type 2020-02-13 15:32:58 -05:00
state-list-backend-default addrs: embed Provider in AbsProviderConfig instead of Type 2020-02-13 15:32:58 -05:00
state-list-nested-modules command/state list: list resources in nested and expanded modules (#27268) 2020-12-14 11:07:15 -05:00
state-pull-backend Standardise directory name for test data 2019-06-30 10:16:15 +02:00
state-push-bad-lineage refactor tests to use modern states.State in favor of terraform.State where possible 2020-09-30 16:07:54 -04:00
state-push-good Standardise directory name for test data 2019-06-30 10:16:15 +02:00
state-push-replace-match Standardise directory name for test data 2019-06-30 10:16:15 +02:00
state-push-serial-newer addrs: embed Provider in AbsProviderConfig instead of Type 2020-02-13 15:32:58 -05:00
state-push-serial-older Standardise directory name for test data 2019-06-30 10:16:15 +02:00
taint-check-required-version command: Taint should respect required_version 2020-09-22 17:33:09 -04:00
test-fails command: Experimental "terraform test" command 2021-02-22 14:21:45 -08:00
test-passes command: Experimental "terraform test" command 2021-02-22 14:21:45 -08:00
validate-invalid fixed configloader doesn't add unnecessary diags 2021-05-07 12:28:09 -04:00
validate-valid cli: Add format version to validate -json output 2021-03-16 09:46:36 -04:00
variables Remove sensitive_variables experiment 2020-10-08 11:22:20 -04:00
empty-file Standardise directory name for test data 2019-06-30 10:16:15 +02:00
statelocker.go state: remove deprecated state package (#25490) 2020-08-11 11:43:01 -04:00