有人能告诉我这里做错了什么吗。我正在尝试将一个新恢复的RDS实例导入地形状态
我有一个应用程序模块,它调用公司存储库中的核心模块
\applications\rds\main.tf
module "rds" {
source = "git::https://mysource-control/public/core-modules//aws/rds/rds?ref=v3.5.0"
}
然后我有一个根环境特定的模块,它调用应用程序模块
\env\us-west-2\qa\rds\main.tf
module "rds" {
source = "../../../../applications/rds"
}
导入时我收到错误
C:....envus-west-2qards>terraform import module.rds.module.rds qa-db-instane
错误:地址无效│ │在第1行:│1:模块.rds.module.rds│ │需要资源实例地址在这里模块路径后面必须跟有资源实例规格╵
有关有效语法的信息,请参阅:https://www.terraform.io/docs/cli/state/resource-addressing.html
官方文档中有一个导入RDS实例的例子https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/db_instance#import
你会注意到他们提到aws_db_instance.default
,这是Terraform资源的名称,后面跟着你给它命名的任何名称
在您的情况下,如果嵌套模块中的底层资源(例如,假设它被称为my_db
(,您将能够进行
terraform import module.rds.module.rds.aws_db_instance.my_db qa-db-instance