Назад | Перейти на главную страницу

Экспорт содержимого файла JSON в Terraform

У меня есть файл ключа учетной записи службы GCP в формате JSON, который мне нужно экспортировать как GOOGLE_APPLICATION_CREDENTIALS. Есть ли способ в Terraform предоставить «содержимое» этого файла JSON напрямую (вместо указания пути к файлу) в блоке переменных Terraform, а затем интерпретировать Terraform как JSON? Я видел, что Terraform имеет функции jsonencode и jsondecode, но не могу найти на нем много примеров. Есть ли другой способ сделать это? Вот подход, который я рассматриваю:

variable "credentials"{
type = "string"
default="<contents of service account key file in JSON format>"
}

В скрипте запуска Bastion:

#!/bin/bash
export GOOGLE_APPLICATION_CREDENTIALS= jsonencode("${file(var.credentials)}")

Таким образом, в конечном итоге GOOGLE_APPLICATION_CREDENTIALS должен иметь содержимое файла ключа в формате JSON. Это можно как-нибудь сделать?