Terraform usage: Difference between revisions
From wikinotes
(→Usage) |
|||
Line 29: | Line 29: | ||
# ${PROJECT}/main.tf | # ${PROJECT}/main.tf | ||
variable "vultr_api_key" { | |||
type = string | |||
} | } | ||
provider "vultr" { | provider "vultr" { | ||
api_key = | api_key = (var.vultr_api_key) | ||
} | } | ||
# ... | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 21:38, 25 September 2022
Documentation
terraform cli https://www.terraform.io/cli debugging https://www.terraform.io/internals/debugging
Usage
terraform fmt # autoformat terraform files terraform init # install dependencies terraform plan # show what is required to deploy terraform apply # deploy instance terraform destroy # delete instance
Secrets Management
The simplest way is probably a combination of direnv and pass.
# ${PROJECT}/main.tf variable "vultr_api_key" { type = string } provider "vultr" { api_key = (var.vultr_api_key) } # ...# ${PROJECT}/.envrc export TF_VAR_api_key="$(pass foo/bar/api_key)"cd ${PROJECT} direnv allow terraform init