2017-09-04 71 views
0

我在Terraform JSON中尋找正確的語法來編寫列表或地圖。似乎是作爲terraform很少文檔JSON(.tf.json)Terraform JSON中的列表和地圖的語法

我目前收到以下錯誤:

Error loading config: Error loading /var/tmp/base.tf.json: Error reading config for aws_instance[web]: Invalid dot index found: 'var.global.ami'. Values in maps and lists can be referenced using square bracket indexing, like: 'var.mymap["key"]' or 'var.mylist[1]'. in: 

${var.global.ami} 

對於下面的代碼:

{ 
    "resource": { 
    "aws_instance": { 
     "web": { 
     "ami": "${var.global.ami}", 
     "count": 2, 

     } 
     } 
    } 
} 

然而,當我調整我的代碼到

{ 
    "resource": { 
    "aws_instance": { 
     "web": { 
     "ami": "${var.global["ami"]}", 
     "count": 2, 

     } 
     } 
    } 
} 

然後我得到的錯誤:

Error loading config: Error parsing /var/tmp/base.tf.json: 5:33: illegal char 

也沒有人知道terraform HCL地形JSON轉換器嗎?

感謝

回答

1

快到了 - 你只需要逃避你的JSON中引號:

"resource": { 
    "aws_instance": { 
    "web": { 
     "ami": "${var.global[\"ami\"]}", 
     "count": 2, 
    } 
    } 
}