В настоящее время я пытаюсь понять, почему Terraform не разрушает среду Elastic Beanstalk вместе со стеком формирования облака, частью которого она является.
module "beanstalk_app" {
source = "../../modules/compute/beanstalk"
stack_name = "${var.stack_name}"
env_name = "${var.env_name}"
app_version = "${var.app_version}"
build_number = "${var.build_number}"
bundle_name = "${var.bundle_name}"
bundle_source = "${var.bundle_name}"
}
resource "aws_elastic_beanstalk_environment" "default" {
name = "${var.stack_name}-${var.env_name}-app"
application = "${data.terraform_remote_state.hailer.hailer_app}"
solution_stack_name = "${var.solution_stack}"
version_label = "${module.beanstalk_app.version}"}
}
, когда я запускаю команду terraform destroy
,этот ресурс даже не упоминается в выходных данных.
data.terraform_remote_state.db: Refreshing state...
data.terraform_remote_state.matcher: Refreshing state...
data.terraform_remote_state.hailer: Refreshing state...
data.terraform_remote_state.hailer: Refreshing state...
data.aws_route53_zone.public: Refreshing state...
data.aws_iam_policy_document.default: Refreshing state...
data.aws_acm_certificate.default: Refreshing state...
data.aws_iam_policy_document.assume: Refreshing state...
Destroy complete! Resources: 0 destroyed.
Приложение Beanstalk и стек CloudFormation все еще остаются в консоли AWS.Поэтому, если я пытаюсь воссоздать стек, то просто получаю ошибки, говоря, что ресурсы, такие как группы безопасности, все еще существуют.
Ожидаемое поведение уничтожения Terraform применительно к модулям и образованию облаков?Потому что его нельзя использовать.
ПРИМЕЧАНИЕ:
- Версия приложения была корректно уничтожена вместе с объектом корзины s3.
- Существует ряд связанных ресурсов, aws_iam_policy, aws_iam_role и т. Д., Которые также не подобраны для уничтожения.