неизвестная функция с именем: formatdate - что эквивалентно 'formatdate' в terraform 0.11.x? - PullRequest
0 голосов
/ 09 июля 2019

Я хочу ввести простую временную метку для имен моих экземпляров ec2

   tags = {

    "Name" = "windows server 2012 ${var.env} - ${formatdate("YYYYMMDD", timestamp())}"
}

Однако, когда я запускаю terraform validate,

Я получил это

Error: aws_instance.convertor: 1 error(s) occurred:

* aws_instance.convertor: 1:33: unknown function called: formatdate in:

 windows server 2012 ${var.env} - ${formatdate("YYYYMMDD", timestamp())}

Видимо, форматирование даты недоступно в моей версии terraform (v0.11.7). Как я могу достичь того же результата в HCL 0.11.7?

1 Ответ

1 голос
/ 09 июля 2019

функция форматирования доступна только в terraform v0.12.То, что вы можете сделать, это использовать некоторые строковые манипуляции, чтобы получить свой результат, как описано здесь ( Terraform timestamp () для чисел только строка ) и сделать простую подстроку, не очень элегантное решение, но оно работает.

locals {
 timestamp = "${timestamp()}"
 timestamp_sanitized = "${substr(replace("${local.timestamp}", "/[-| |T|Z|:]/", ""),0,8)}"
}

output "timestamp" {
  value = "${local.timestamp_sanitized}"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...