Я создаю некоторую инфраструктуру в AWS с помощью Terraform. У меня создано несколько корзин S3, и я хочу, чтобы краулер Glue сканировал эти корзины один раз в час. Моя база данных каталога Terraform Glue, роль и политика все строятся нормально, но когда я пытаюсь создать ресурс искателя, добавляя четыре пути S3 к s3_target{}
части искателя, я получаю ошибку:
resource "aws_glue_crawler" "datalake_crawler" {
database_name = "${var.glue_db_name}"
name = "${var.crawler_name}"
role = "${aws_iam_role.glue.id}"
s3_target {
# count = "${length(var.data_source_path)}"
path = "${var.data_source_path}"#"${formatlist("%s", var.data_source_path)}"
}
}
Это вызывает ошибку:
Error: aws_glue_crawler.datalake_crawler: s3_target.0.path must be a single value, not a list
Я попытался добавить оператор count
в s3_target
, но это не удалось. Я также пробовал добавить
"${formatlist("%s", var.data_source_path)}"
в аргументе path
, но это тоже не удается.
Могу ли я добавить несколько s3
путей к Glue Crawler с Terraform? Я могу сделать это через консоль AWS, но это нужно сделать, используя инфраструктуру как код.
s3_target
для каждого пути. Прямо сейчас на моем телефоне, поэтому не могу проверить его, чтобы дать правильный ответ. - person ydaetskcoR   schedule 19.02.2019s3_target
к ресурсу поискового робота glue позволило мне добавить все четыре моих сегмента в поисковый робот. Я просмотрел документацию по клею, но не увидел ничего, что заставило меня поверить, что я могу воспроизвестиs3_target
блоки. Вы можете помочь мне увидеть, чего не хватало? Кроме того, могу ли я добавлять эти блоки программно на основе переменной? Не стесняйтесь добавлять в качестве ответа, когда вернетесь к коробке; рад принять. - person Steven   schedule 19.02.2019