-
Notifications
You must be signed in to change notification settings - Fork 9.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
command backend #33007
Comments
I believe this is a duplicate of #5877 The prescribed solution is extremely specific, so I will bring this to triage to see if it makes sense keeping this one open due to its specificity. Thanks for the request! |
Yes, #5877 would solve this. But it's 7 years old, and ambitious. |
Voted for this issue since #5877 proposes the use of plugin system, while this one propose a simple and flexible solution which can be built-in like the "local" backend and doesn't require to code in go. Seriously, one could think that Hashicorp is looking for the world-wide infrastructure control, making secure |
Though I would prefer to specify And don't think that environment variables should be configured (they can be just inherited from env in which terraform runs). Working directory as of me also should be treated in "convention over configuration" way (should be equal to terraform working directory). Both this can be specified using What do you think? |
Hmm. With "local-exec" having |
Using an env var is somewhat odd, but presents some more flexibility with programs accepting CLI vars. The Neither are highly significant to the overall benefit/functionality/ergonomics. |
Terraform Version
Use Cases
I want to implement a custom backend, e.g. MySQL, MongoDB, Vault. Currently there is no general extension mechanism. #5877
Attempted Solutions
There is a HTTP backend that can be used as an extension mechanism. That is awkward, because it requires starting an HTTP server, controlling authentication so that other processes cannot access, etc.
Proposal
Invoke commands with an external process.
Terraform would specify env var
TF_ACTION
asread
,write
,lock
, orunlock
, with the lock information being inTF_LOCK
.The executable would read stdin/write stdout.
References
No response
The text was updated successfully, but these errors were encountered: