#terraform
Вопрос:
Я пытаюсь запустить модуль, в котором я получаю ошибку, как :
Ожидал начала выражения, но обнаружил недопустимый маркер выражения.
variable "vpc" {
type = map(string)
default =
{
dev = "vpc-1234567"
qa = "vpc-2345678"
prod = "vpc-3345679"
}
}
Комментарии:
1. Я не думаю , что вам нужны цитаты для
dev
,qa
иprod
.2. Даже после удаления кавычек я получаю ту же ошибку. Я мог прочитать из документов, что карта использования terraform v. 12 устарела. terraform.io/docs/language/functions/map.html . но не уверен, как это реализовать.
3. Там у вас есть случайная завершающая закрывающая скобка. Я проголосовал за закрытие как опечатка на данный момент, потому что я не думаю, что это полезно для других, но, надеюсь, это поможет решить проблему для вас.
4. извините, что все еще получаю ту же ошибку
5. @ydaetskcoR Это не из-за скобок. Это будет вторая проблема.
Ответ №1:
Вы не можете иметь новую строку после значения по умолчанию. Это должно быть:
variable "vpc" {
type = map(string)
default = {
"dev" = "vpc-1234567"
"qa" = "vpc-2345678"
"prod" = "vpc-3345679"
}
}
Комментарии:
1. Спасибо @Marcin, это сработало. Я получаю еще одну ошибку как «Требуется определение аргумента или блока», если это для карты?
2. @ManoharKumarSingh Это кажется новой проблемой, поэтому новый вопрос был бы лучше.
3. Спасибо за ваш ответ. исправлено отсутствие одной круглой скобки.
4. @ManoharKumarSingh Нет проблем. Если бы ответ был полезным, мы были бы признательны за его принятие.