terraform/command
James Bardin e9a76808df create clistate.Locker interface
Simplify the use of clistate.Lock by creating a clistate.Locker
instance, which stores the context of locking a state, to allow unlock
to be called without knowledge of how the state was locked.

This alows the backend code to bring the needed UI methods to the point
where the state is locked, and still unlock the state from an outer
scope.

Provide a NoopLocker as well, so that callers can always call Unlock
without verifying the status of the lock.

Add the StateLocker field to the backend.Operation, so that the state
lock can be carried between the different function scopes of the backend
code. This will allow the backend context to lock the state before it's
read, while allowing the different operations to unlock the state when
they complete.
2018-02-23 16:48:15 -05:00
..
clistate create clistate.Locker interface 2018-02-23 16:48:15 -05:00
e2etest Re-integrate the "terraform" provider into the main binary 2017-11-03 11:36:31 -07:00
format gofmt with go1.10 2018-02-21 10:22:08 -05:00
test-fixtures add test for internal plugins with -plugin-dir 2018-01-05 11:51:09 -05:00
testdata Have backend operations properly unlock state 2017-02-15 14:41:55 -05:00
apply.go move backend operation cancellation into meta 2018-02-12 11:56:54 -05:00
apply_destroy_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
apply_test.go ignore error in plan shutdown test 2018-02-12 11:56:54 -05:00
autocomplete.go command: use newer version of "complete" library 2017-12-05 10:24:04 -08:00
autocomplete_test.go command: use newer version of "complete" library 2017-12-05 10:24:04 -08:00
cli_ui.go adding new AskSecret to ColorizeUi 2015-04-29 13:07:13 -05:00
cli_ui_test.go command/*: colors on error messages (red) 2014-07-12 20:59:16 -07:00
command.go return tfdiags.Diagnostics from validation methods 2017-11-28 11:15:29 -08:00
command_test.go pass command credentials into module.Storage 2017-10-27 16:16:35 -04:00
console.go command: validate config as part of loading it 2017-12-07 14:28:43 -08:00
console_interactive.go command: split out and tag code so compilation works on Solaris 2016-11-14 00:32:01 -08:00
console_interactive_solaris.go command: split out and tag code so compilation works on Solaris 2016-11-14 00:32:01 -08:00
console_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
debug_command.go Add debug command with json2dot 2016-11-21 11:59:20 -05:00
debug_json2dot.go Use all tfvars files in working directory 2017-07-05 17:24:17 -07:00
debug_json2dot_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
flag_kv.go command: use helper/variables for flags and parsing 2016-12-10 14:30:40 -05:00
flag_kv_test.go command: use helper/variables for flags and parsing 2016-12-10 14:30:40 -05:00
fmt.go command: add -check flag to fmt (#15304) 2017-07-21 14:37:15 -05:00
fmt_test.go command: add -check flag to fmt (#15304) 2017-07-21 14:37:15 -05:00
get.go use the new ModuleStorage in the command package 2017-10-27 12:58:24 -04:00
get_test.go update tests for updated output 2017-11-03 11:13:31 -04:00
graph.go command: validate config as part of loading it 2017-12-07 14:28:43 -08:00
graph_test.go graph should not panic with no config 2017-07-18 13:03:57 -04:00
hcl_printer.go always quote hcl map keys 2017-02-24 18:32:59 -05:00
hcl_printer_test.go always quote hcl map keys 2017-02-24 18:32:59 -05:00
hook_ui.go command: show resource actions using resource addresses 2017-09-01 17:55:05 -07:00
hook_ui_test.go Output duration in UiHook after successful operation completion. 2017-08-16 14:41:41 -07:00
import.go command: show a special error message when importing in an empty dir 2017-12-11 16:08:33 -08:00
import_test.go command: show a special error message when importing in an empty dir 2017-12-11 16:08:33 -08:00
init.go Merge pull request #16920 from hashicorp/jbardin/init-future-state 2018-01-05 16:54:41 -05:00
init_test.go Merge pull request #16969 from hashicorp/jbardin/reset-plugin-dir 2018-01-08 16:51:47 -05:00
internal_plugin.go create a new InternalProviders test 2018-01-05 10:59:30 -05:00
internal_plugin_list.go v0.11.2 2018-01-09 23:13:33 +00:00
internal_plugin_test.go create a new InternalProviders test 2018-01-05 10:59:30 -05:00
meta.go move backend operation cancellation into meta 2018-02-12 11:56:54 -05:00
meta_backend.go create clistate.Locker interface 2018-02-23 16:48:15 -05:00
meta_backend_migrate.go create clistate.Locker interface 2018-02-23 16:48:15 -05:00
meta_backend_test.go remove extra "yes" confirmation in tests 2017-12-18 11:42:33 -05:00
meta_new.go command: validate config as part of loading it 2017-12-07 14:28:43 -08:00
meta_test.go properly cleanup and print correct error messages 2017-07-06 11:33:32 -04:00
output.go Use all tfvars files in working directory 2017-07-05 17:24:17 -07:00
output_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
plan.go move backend operation cancellation into meta 2018-02-12 11:56:54 -05:00
plan_test.go ignore error in plan shutdown test 2018-02-12 11:56:54 -05:00
plugins.go Merge pull request #16969 from hashicorp/jbardin/reset-plugin-dir 2018-01-08 16:51:47 -05:00
plugins_lock.go Standardize on log level "WARN" rather than "WARNING" 2018-01-16 18:05:26 -08:00
plugins_lock_test.go command: helper to manage the provider plugins lock file 2017-06-09 14:03:59 -07:00
plugins_test.go Re-integrate the "terraform" provider into the main binary 2017-11-03 11:36:31 -07:00
providers.go command: validate config as part of loading it 2017-12-07 14:28:43 -08:00
providers_test.go command/providers: Add regression test 2017-06-10 12:02:01 +01:00
push.go command: validate config as part of loading it 2017-12-07 14:28:43 -08:00
push_test.go Don't show plugin init message if there are none 2017-06-19 12:08:42 -04:00
refresh.go move backend operation cancellation into meta 2018-02-12 11:56:54 -05:00
refresh_test.go update state test strings in command package 2017-11-07 21:18:08 -05:00
show.go command/format: improve consistency of plan results 2017-09-01 17:55:05 -07:00
show_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
state_command.go Thread the environment through all commands 2017-02-28 16:35:46 -05:00
state_list.go Use all tfvars files in working directory 2017-07-05 17:24:17 -07:00
state_list_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
state_meta.go Make the state commands use the real command.Meta 2017-07-27 15:33:50 -04:00
state_mv.go update state rm amd mv docs 2017-08-03 13:24:23 -04:00
state_mv_test.go add tests for state commands through a backend 2017-07-27 18:06:47 -04:00
state_pull.go Use all tfvars files in working directory 2017-07-05 17:24:17 -07:00
state_pull_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
state_push.go Use all tfvars files in working directory 2017-07-05 17:24:17 -07:00
state_push_test.go create failing test cases for remote lineage issue 2017-08-01 19:34:21 -04:00
state_rm.go command/state-rm: tell the user how many items were removed 2017-09-20 12:48:27 -07:00
state_rm_test.go add tests for state commands through a backend 2017-07-27 18:06:47 -04:00
state_show.go Use all tfvars files in working directory 2017-07-05 17:24:17 -07:00
state_show_test.go Push plugin discovery down into command package 2017-06-09 14:03:59 -07:00
state_test.go Make the state commands use the real command.Meta 2017-07-27 15:33:50 -04:00
taint.go create clistate.Locker interface 2018-02-23 16:48:15 -05:00
taint_test.go Clean up LockInfo and LockError and use them 2017-02-15 14:44:43 -05:00
ui_input.go command: initial work on migrating envs, basic cases first 2017-03-01 10:59:17 -08:00
ui_input_test.go command: use bufio.ReadString instead of scanning to get spaces 2016-08-22 12:59:48 -07:00
unlock.go Use all tfvars files in working directory 2017-07-05 17:24:17 -07:00
unlock_test.go create failing test cases for remote lineage issue 2017-08-01 19:34:21 -04:00
untaint.go create clistate.Locker interface 2018-02-23 16:48:15 -05:00
untaint_test.go Clean up LockInfo and LockError and use them 2017-02-15 14:44:43 -05:00
validate.go command: validate config as part of loading it 2017-12-07 14:28:43 -08:00
validate_test.go return tfdiags.Diagnostics from validation methods 2017-11-28 11:15:29 -08:00
version.go command: Include provider versions in "terraform version" 2017-10-25 17:36:24 -07:00
version_test.go Implement CLI, version command 2014-05-24 12:04:43 -07:00
workspace_command.go Remove duplicated help messages from `workspace --help` 2018-01-23 23:38:42 +09:00
workspace_command_test.go update workspace new test for inmem backend 2017-08-01 19:34:22 -04:00
workspace_delete.go create clistate.Locker interface 2018-02-23 16:48:15 -05:00
workspace_list.go command: parameter autocomplete for "terraform workspace ..." 2017-09-26 14:01:13 -07:00
workspace_new.go create clistate.Locker interface 2018-02-23 16:48:15 -05:00
workspace_select.go command: parameter autocomplete for "terraform workspace ..." 2017-09-26 14:01:13 -07:00
workspace_show.go command: parameter autocomplete for "terraform workspace ..." 2017-09-26 14:01:13 -07:00