Переопределить ресурс дочернего модуля - PullRequest
0 голосов
/ 10 февраля 2019

У меня довольно обширный стек, который создает VPC, группы безопасности и межсетевые экраны Palo Alto - 3 модуля вместе.

main.tf
/vpc/
   main.tf
   outputs.tf
   variables.tf
/sg/
   main.tf
   outputs.tf
   variables.tf
/pafw/
   main.tf
   outputs.tf
   variables.tf

Как только PA FW завершен, мне нужно переопределить таблицу маршрутов, чтобы удалить Internet Gateway.

Каков наилучший способ сделать это?

Я строю несколько VPC с подсетью и таблицей маршрутов со связанным маршрутом через несколько копий модуля "VPC"

Я строюPA FW с начальной загрузкой в ​​нескольких модулях "PAFW" и необходим интернет-шлюз для применения Bootstrap

После завершения работы модуля "PAFW" мне нужно переопределить маршрут с помощью "0.0.0.0/0", чтобы указать на пиринг VPCсоединение, которое создается в main.tf и которое вызывает все модули.

До сих пор я пробовал: - переопределять из модуля "PAFW", но не могу найти способ переопределить ресурс в модуле ../vpc -создать отдельный маршрут, но он не работает, так как маршрут с "0.0.0.0/0" уже существует

Спасибо за помощь!

Модуль VPC

resource "aws_route" "public_internet_gateway" {
  count = "${var.create_vpc && !var.public_subnets_peer && length(var.public_subnets) > 0 ? 1 : 0}"

  route_table_id         = "${aws_route_table.public.id}"
  destination_cidr_block = "0.0.0.0/0"
  gateway_id             = "${aws_internet_gateway.this.id}"

  timeouts {
    create = "5m"
  }
}

resource "aws_route" "public_peering" {
  count = "${var.create_vpc && var.public_subnets_peer ? 1 : 0}"

  route_table_id         = "${aws_route_table.public.id}"
  destination_cidr_block = "0.0.0.0/0"
  vpc_peering_connection_id = "${var.vpc_peering_id_1}"

  timeouts {
    create = "5m"
  }
}

PAFWМодуль заканчивает Bootstрэп с:

resource "null_resource" "check_fw_ready" {
  triggers {
    key = "${aws_instance.FWInstance.id}"
  }

  provisioner "local-exec" {
    command = "./check_fw.sh ${aws_eip.ManagementElasticIP.public_ip}"
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...