返回
Featured image of post Terraformer - 入門好朋友

Terraformer - 入門好朋友

Terraform

前言

當看到每個 provider 完全不同的 resources 肯定嚇個半死 真心搭配學習使用,首先先學會一朵雲至少可以UI介面建置的程度,再來使用這工具,會有事半功倍的功效喔!

前提概要:需先手建GCP且將API先開啟

install

官方網站: https://github.com/GoogleCloudPlatform/terraformer

  • terraformer - 此工具,且會使用 GCP為範例:docs
# install terraform
$ brew install terraform
$ terraform --version
Terraform v1.5.6
on darwin_arm64
# install terraformer
$ brew install --HEAD terraformer
$ terraformer --version
version v0.8.24

快速使用

# provider.tf
terraform {
  required_providers {
    google = {
      source  = "hashicorp/google"
      version = "4.21.0"           # (20230907 紀錄) 使用這版,使用太新的會噴錯誤
    }
  }

  required_version = ">= 0.14"
}
# 需先去新增一個 Service Account 給與 Viewer 權限 新增一把 key
# 若是使用 gcloud 命令列 gcloud auth application-default login 登入且有 Viewer 權限亦可
$ export GOOGLE_APPLICATION_CREDENTIALS=$(pwd)/key.json
# 安裝依賴,由於 terragrunt base on terraform
$ terraform init
# terraformer import <provider> --resources=<導出項目> --regions=<地區> --projects=<GCP ProjectID>
$ terraformer import google --resources=instances --regions=asia-east1 --projects=gcp-project-id

會生成 generated 資料夾 裡面就是此 project 的 terraform 文件 建議搭配學習使用,可以快速的把 google resources 看過一遍

comments powered by Disqus