Неправильное значение для атрибута "триггеры": требуется карта строки - PullRequest
0 голосов
/ 08 июля 2019

Ошибка: «Неправильное значение для атрибута« триггеры »: требуется карта строки».

Попытка использовать local-exec Provider, который должен запускаться перед созданием конкретного ресурса, в данном случае «monitor»

resource "null_resource" "test_run" {
  provisioner "local-exec" {
    command     = "bin/script.sh"
    interpreter = ["bash", "-File"]
  }

  triggers {
    before = "${bigip_ltm_monitor.millenium}"
  }
}

resource "bigip_ltm_monitor" "millenium" {
  compatibility = "enabled"
  interval      = "5"
  name          = "/Common/https_mon"
  parent        = "/Common/https"
  receive       = "200"
  reverse       = "disabled"
  send          = "GET /health HTTP/1.1\r\nHost: xyz.com\r\nConnection: Close\r\n\r\n"
  timeout       = "16"
}

Ответы [ 2 ]

0 голосов
/ 09 июля 2019

Цель аргумента triggers состоит в том, чтобы указать набор строк, которые реализация null_resource может проверить на наличие изменений, чтобы решить, следует ли заменить объект, что, в свою очередь, приведет к повторному запуску поставщика.

Если вам нужно создать null_resource.test_run до создания bigip_ltm_monitor.millenium, то вам нужно написать ребро зависимости другим способом, внутри bigip_ltm_monitor.Например:

resource "bigip_ltm_monitor" "millenium" {
  compatibility = "enabled"
  interval      = "5"
  name          = "/Common/https_mon"
  parent        = "/Common/https"
  receive       = "200"
  reverse       = "disabled"
  send          = "GET /health HTTP/1.1\r\nHost: xyz.com\r\nConnection: Close\r\n\r\n"
  timeout       = "16"

  depends_on = [null_resource.test_run]
}
0 голосов
/ 08 июля 2019

Попробуйте установить depends_on = [null_resource.test_run] в вашем bigip_ltm_monitor ресурс вместо из triggers{...} в вашем null_resource .

Это позволяет Terraform создавать ресурс инициатора до начала мониторинга.

См. Зависимости ресурсов для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...