как читать второй блок в tfstate с помощью terraform?
У меня удаленное состояние на s3, и я не знаю, как получить доступ ко второму блоку json файла tfstate.
Мое tfstate выглядит так:
{
"version": 3,
"terraform_version": "0.11.7",
"serial": 1,
"lineage": "79b7840d-5998-1ea8-2b63-ca49c289ec13",
"modules": [
{
"path": [
"root"
],
"outputs": {},
"resources": {},
"depends_on": []
},
{
"path": [
"root",
"vpc"
],
"outputs": {
"database_subnet_group": {
all my resources are listed here...
}
и я могу получить доступ к этому коду:
data "terraform_remote_state" "network" {
backend = "s3"
config = {
bucket = "bakka-tfstate"
key = "global/network.tfstate"
region = "eu-west-1"
}
}
но выход
output "tfstate" {
value = data.terraform_remote_state.network.outputs
}
ничего не показывает мне
Подать заявку полностью! Ресурсы: 0 добавлено, 0 изменено, 0 уничтожено.
Выходы:
tfstate = {}
Я считаю, что это потому, что в этом tfstate есть два блока json, и terraform читают первый, который пуст, поэтому я спрашиваю, как читать второй?
1 ответ
Решение
Только корневые выходы доступны через удаленное состояние. Это ограничение описано здесь. Он также предлагает решение - в проекте, который создает состояние, о котором вы говорите, вам нужно будет направить вывод в корневой вывод.