我可以将Terraform输出/resources.id值传递到variable.tf文件中的任何变量中吗?

我可以将Terraform输出/resources.id值传递到variable.tf文件中的任何变量中吗?,terraform,terraform-provider-azure,azure-rm,Terraform,Terraform Provider Azure,Azure Rm,我需要有客户端\u秘密输出值作为租户\u应用程序\u密码的输入 变量.tf Create-service-principal.tf 输出 我们有什么办法吗 我假设您希望在另一个地形中使用一个地形运行的输出。您可以通过使用提供者来实现这一点 您不能将原始输出放在变量中,但可以将远程输出直接用作另一个模板中的变量。例如,在第二个模板中: // set up the remote state data source data "terraform_remote_state" "foo" { ba

我需要有客户端\u秘密输出值作为租户\u应用程序\u密码的输入

变量.tf

Create-service-principal.tf

输出


我们有什么办法吗

我假设您希望在另一个地形中使用一个地形运行的输出。您可以通过使用提供者来实现这一点

您不能将原始输出放在变量中,但可以将远程输出直接用作另一个模板中的变量。例如,在第二个模板中:

// set up the remote state data source

data "terraform_remote_state" "foo" {
  backend = "s3"

  config = {
    bucket  = "<your bucket name>"
    key     = "<your statefile name.tfstate"
    region  = "<your region>"
  }
}


// use it 

resource "kubernetes_secret" "bar" {
  metadata {
    name = "bar"
  }

  data = {
    client_secret = data.terraform_remote_state.foo.outputs.client_secret
  }

}

另请查看。

这两个模块是分开的吗?
resource "random_string" "password" {
  length  = 32
  special = true
}

# Create Service Principal Password
 resource "azuread_service_principal_password" "test_sp_pwd" {
 service_principal_id =  azuread_service_principal.test_sp.id
 value                = random_string.password.result
 end_date       = "2020-01-12T07:10:53+00:00" 
}

output "client_secret" {
  value     = "${azuread_service_principal_password.wvd_sp_pwd.value}"
  sensitive = true
}
// set up the remote state data source

data "terraform_remote_state" "foo" {
  backend = "s3"

  config = {
    bucket  = "<your bucket name>"
    key     = "<your statefile name.tfstate"
    region  = "<your region>"
  }
}


// use it 

resource "kubernetes_secret" "bar" {
  metadata {
    name = "bar"
  }

  data = {
    client_secret = data.terraform_remote_state.foo.outputs.client_secret
  }

}