terraform.plugin.zsh 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. function tf_prompt_info() {
  2. # dont show 'default' workspace in home dir
  3. [[ "$PWD" != ~ ]] || return
  4. # check if in terraform dir and file exists
  5. [[ -d "${TF_DATA_DIR:-.terraform}" && -r "${TF_DATA_DIR:-.terraform}/environment" ]] || return
  6. local workspace="$(< "${TF_DATA_DIR:-.terraform}/environment")"
  7. echo "${ZSH_THEME_TF_PROMPT_PREFIX-[}${workspace:gs/%/%%}${ZSH_THEME_TF_PROMPT_SUFFIX-]}"
  8. }
  9. function tf_version_prompt_info() {
  10. local terraform_version
  11. terraform_version=$(terraform --version | head -n 1 | cut -d ' ' -f 2)
  12. echo "${ZSH_THEME_TF_VERSION_PROMPT_PREFIX-[}${terraform_version:gs/%/%%}${ZSH_THEME_TF_VERSION_PROMPT_SUFFIX-]}"
  13. }
  14. alias tf='terraform'
  15. alias tfa='terraform apply'
  16. alias tfaa='terraform apply -auto-approve'
  17. alias tfc='terraform console'
  18. alias tfd='terraform destroy'
  19. alias 'tfd!'='terraform destroy -auto-approve'
  20. alias tff='terraform fmt'
  21. alias tffr='terraform fmt -recursive'
  22. alias tfi='terraform init'
  23. alias tfiu='terraform init -upgrade'
  24. alias tfo='terraform output'
  25. alias tfp='terraform plan'
  26. alias tfv='terraform validate'
  27. alias tfs='terraform state'
  28. alias tft='terraform test'
  29. alias tfsh='terraform show'