動作確認環境
- terraform v0.12.24
- terraform-provider-google v3.19.0
TL;DR
下のようなコードで実現できます。
main.tf
resource "google_service_account" "my-account" {
account_id = "my-account"
}
resource "google_service_account_key" "my-account-key" {
service_account_id = google_service_account.my-account.name
}
resource "local_file" "my-account-key" {
filename = "./output/secrets/my-account-key.json"
content = base64decode(google_service_account_key.my-account-key.private_key)
file_permission = "0600"
directory_permission = "0755"
}
local_fileとは
その名の通りで、Terraformでローカルにファイルを作成できるリソースです。