Google cloud platform Terraform主题资源已存在于跨项目中?如何处理?

Google cloud platform Terraform主题资源已存在于跨项目中?如何处理?,google-cloud-platform,terraform,google-cloud-pubsub,terraform-provider-gcp,Google Cloud Platform,Terraform,Google Cloud Pubsub,Terraform Provider Gcp,如何处理多个项目中存在的资源。在本例中,我有两个TF项目,在google pubsub中有一个共享主题。遵循以下步骤,我在订阅服务器项目中创建了此配置。但它给了我一个资源已经存在的错误 resource "google_pubsub_topic" "item_edited" { project = "listing-dev" name = "item_edited" } 因此,这个资源已经存在于其他一些项目中,但按照指南,我也创建了我们自己的项目 resource "google

如何处理多个项目中存在的资源。在本例中,我有两个TF项目,在google pubsub中有一个共享主题。遵循以下步骤,我在订阅服务器项目中创建了此配置。但它给了我一个资源已经存在的错误

resource "google_pubsub_topic" "item_edited" {
  project = "listing-dev"
  name    = "item_edited"
}
因此,这个资源已经存在于其他一些项目中,但按照指南,我也创建了我们自己的项目

resource "google_pubsub_subscription" "item_edited" {
  name    = "item_edited_subscription"
  topic   = "${google_pubsub_topic.item_edited.id}"
  project = "${module.offer-dev.gcp_project_id}"
}
错误:

Error: Error applying plan:

1 error(s) occurred:

* google_pubsub_topic.item_edited: 1 error(s) occurred:

* google_pubsub_topic.item_edited: googleapi: Error 409: Resource already exists in the project (resource=item_edited)., alreadyExists

主题名称应具有以下格式:

projects/<your_project>/topics/<your_topic_name>
项目//主题/
有关更多信息,您可以检查以下内容和/或尝试


希望能有所帮助。

事实上,正确的答案是我们需要在terraform配置中使用变量来显式定义依赖关系

通过研究插值表达式中使用的资源属性,Terraform可以自动推断何时一种资源依赖于另一种资源