Версия Terraform : v0.11.8
Я пытаюсь обновить правило группы безопасности, которая находится в другом регионе (Ирландия), после развертывания моей текущей группы безопасности (Огайо).
Ниже приведен фрагмент кода:
variable "aws_account_id" {}
terraform {
backend "s3" {}
}
provider "aws" {
region = "us-east-2"
allowed_account_ids = ["${var.aws_account_id}"]
}
provider "aws" {
alias = "TestApp"
region = "eu-west-1"
}
data "aws_security_group" "test_sg" {
provider = "aws.TestApp"
name = "test-sg"
}
resource "aws_security_group" "test1_sg" {
name = "Test 1"
vpc_id = "VPC ID"
}
resource "aws_security_group_rule" "allow_test1_access_test_sg" {
provider = "aws.TestApp"
type = "ingress"
from_port = "80"
to_port = "80"
protocol = "tcp"
security_group_id = "${data.aws_security_group.test_sg.id}"
source_security_group_id = "${aws_security_group.test1_sg.id}"
}
У меня круговая зависимость, как показано ниже.
Случай 1 : Запустите вышеуказанный код, получая сообщение об ошибке, что test1_sg
группа безопасности не существует.
Случай 2 : Выполнить указанный выше код без provider = "aws.TestApp"
в aws_security_group_rule
, Ошибка при получении, что группа безопасности test_sg не существует.
Случай 3 : выполнение вышеуказанного кода без provider = "aws.TestApp"
в data "aws_security_group" "test_sg"
, Ошибка при получении, что группа безопасности test_sg не существует.
Я не уверен, что это 100% проблема межрегиональной связи, но похоже, что это так.
Примечание. Приведенная выше ошибка возникает при применении terraform. План показывает правильные изменения без каких-либо ошибок.
Любая помощь будет высоко оценена.
Спасибо!