mirror of
https://github.com/rsteube/carapace-bin.git
synced 2025-05-05 15:32:53 +00:00
89 lines
5.7 KiB
Go
89 lines
5.7 KiB
Go
package env
|
|
|
|
import (
|
|
"github.com/rsteube/carapace"
|
|
"github.com/rsteube/carapace-bin/pkg/actions/tools/tofu"
|
|
"github.com/rsteube/carapace-bridge/pkg/actions/bridge"
|
|
"github.com/rsteube/carapace/pkg/style"
|
|
)
|
|
|
|
func init() {
|
|
_bool := carapace.ActionValues("true", "false").StyleF(style.ForKeyword)
|
|
knownVariables["tofu"] = variables{
|
|
Variables: map[string]string{
|
|
"TF_LOG": "Enables detailed logs to appear on stderr which is useful for debugging",
|
|
"TF_LOG_PATH": "This specifies where the log should persist its output to",
|
|
"TF_INPUT": "If set to \"false\" or \"0\", causes tofu commands to behave as if the -input=false flag was specified",
|
|
"TF_CLI_ARGS": "Additional cli arguments",
|
|
"TF_CLI_ARGS_init": "Additional cli arguments to init",
|
|
"TF_CLI_ARGS_validate": "Additional cli arguments to validate",
|
|
"TF_CLI_ARGS_plan": "Additional cli arguments to plan",
|
|
"TF_CLI_ARGS_apply": "Additional cli arguments to apply",
|
|
"TF_CLI_ARGS_destroy": "Additional cli arguments to destroy",
|
|
"TF_CLI_ARGS_console": "Additional cli arguments to console",
|
|
"TF_CLI_ARGS_fmt": "Additional cli arguments to fmt",
|
|
"TF_CLI_ARGS_force-unlock": "Additional cli arguments to force-unlock",
|
|
"TF_CLI_ARGS_get": "Additional cli arguments to get",
|
|
"TF_CLI_ARGS_graph": "Additional cli arguments to graph",
|
|
"TF_CLI_ARGS_import": "Additional cli arguments to import",
|
|
"TF_CLI_ARGS_login": "Additional cli arguments to login",
|
|
"TF_CLI_ARGS_logout": "Additional cli arguments to logout",
|
|
"TF_CLI_ARGS_metadata": "Additional cli arguments to metadata",
|
|
"TF_CLI_ARGS_output": "Additional cli arguments to output",
|
|
"TF_CLI_ARGS_providers": "Additional cli arguments to providers",
|
|
"TF_CLI_ARGS_refresh": "Additional cli arguments to refresh",
|
|
"TF_CLI_ARGS_show": "Additional cli arguments to show",
|
|
"TF_CLI_ARGS_state": "Additional cli arguments to state",
|
|
"TF_CLI_ARGS_taint": "Additional cli arguments to taint",
|
|
"TF_CLI_ARGS_test": "Additional cli arguments to test",
|
|
"TF_CLI_ARGS_untaint": "Additional cli arguments to untaint",
|
|
"TF_CLI_ARGS_version": "Additional cli arguments to version",
|
|
"TF_CLI_ARGS_workspace": "Additional cli arguments to workspace",
|
|
"TF_DATA_DIR": "Changes the location where tofu keeps its per-working-directory data",
|
|
"TF_WORKSPACE": "Selects the workspace",
|
|
"TF_IN_AUTOMATION": "Adjusts its output to avoid suggesting specific commands to run next",
|
|
"TF_REGISTRY_DISCOVERY_RETRY": "Max number of request retries the remote registry client will attempt",
|
|
"TF_REGISTRY_CLIENT_TIMEOUT": "Client timeout for requests ",
|
|
"TF_CLI_CONFIG_FILE": "Location of the tofu CLI configuration file",
|
|
"TF_PLUGIN_CACHE_DIR": "Plugin cache directory",
|
|
"TF_IGNORE": "When set to \"trace\", tofu will output debug messages to display ignored files and folder",
|
|
},
|
|
VariableCompletion: map[string]carapace.Action{
|
|
"TF_LOG": _bool,
|
|
"TF_LOG_PATH": carapace.ActionValues(),
|
|
"TF_INPUT": carapace.ActionFiles(),
|
|
"TF_CLI_ARGS": bridge.ActionCarapaceBin("tofu").Split(),
|
|
"TF_CLI_ARGS_init": bridge.ActionCarapaceBin("tofu", "init").Split(),
|
|
"TF_CLI_ARGS_validate": bridge.ActionCarapaceBin("tofu", "validate").Split(),
|
|
"TF_CLI_ARGS_plan": bridge.ActionCarapaceBin("tofu", "plan").Split(),
|
|
"TF_CLI_ARGS_apply": bridge.ActionCarapaceBin("tofu", "apply").Split(),
|
|
"TF_CLI_ARGS_destroy": bridge.ActionCarapaceBin("tofu", "destroy").Split(),
|
|
"TF_CLI_ARGS_console": bridge.ActionCarapaceBin("tofu", "console").Split(),
|
|
"TF_CLI_ARGS_fmt": bridge.ActionCarapaceBin("tofu", "fmt").Split(),
|
|
"TF_CLI_ARGS_force-unlock": bridge.ActionCarapaceBin("tofu", "force-unlock").Split(),
|
|
"TF_CLI_ARGS_get": bridge.ActionCarapaceBin("tofu", "get").Split(),
|
|
"TF_CLI_ARGS_graph": bridge.ActionCarapaceBin("tofu", "graph").Split(),
|
|
"TF_CLI_ARGS_import": bridge.ActionCarapaceBin("tofu", "import").Split(),
|
|
"TF_CLI_ARGS_login": bridge.ActionCarapaceBin("tofu", "login").Split(),
|
|
"TF_CLI_ARGS_logout": bridge.ActionCarapaceBin("tofu", "logout").Split(),
|
|
"TF_CLI_ARGS_metadata": bridge.ActionCarapaceBin("tofu", "metadata").Split(),
|
|
"TF_CLI_ARGS_output": bridge.ActionCarapaceBin("tofu", "output").Split(),
|
|
"TF_CLI_ARGS_providers": bridge.ActionCarapaceBin("tofu", "providers").Split(),
|
|
"TF_CLI_ARGS_refresh": bridge.ActionCarapaceBin("tofu", "refresh").Split(),
|
|
"TF_CLI_ARGS_show": bridge.ActionCarapaceBin("tofu", "show").Split(),
|
|
"TF_CLI_ARGS_state": bridge.ActionCarapaceBin("tofu", "state").Split(),
|
|
"TF_CLI_ARGS_taint": bridge.ActionCarapaceBin("tofu", "taint").Split(),
|
|
"TF_CLI_ARGS_test": bridge.ActionCarapaceBin("tofu", "test").Split(),
|
|
"TF_CLI_ARGS_untaint": bridge.ActionCarapaceBin("tofu", "untaint").Split(),
|
|
"TF_CLI_ARGS_version": bridge.ActionCarapaceBin("tofu", "version").Split(),
|
|
"TF_CLI_ARGS_workspace": bridge.ActionCarapaceBin("tofu", "workspace").Split(),
|
|
"TF_DATA_DIR": carapace.ActionDirectories(),
|
|
"TF_WORKSPACE": tofu.ActionWorkspaces(),
|
|
"TF_IN_AUTOMATION": _bool,
|
|
"TF_CLI_CONFIG_FILE": carapace.ActionFiles(),
|
|
"TF_PLUGIN_CACHE_DIR": carapace.ActionDirectories(),
|
|
"TF_IGNORE": carapace.ActionValues("trace").StyleF(style.ForLogLevel),
|
|
},
|
|
}
|
|
}
|