Terraform resource property dependent on creation of resource

Viewed 118

Often, I've found myself in the scenario where I want to create a resource with Terraform and want to set, for example, an environment variable on this resource which is only known at a later stage, when the resource is created.

Let's say I want to create a google_cloud_run_service and want to set an environment variable in the container, that represents the url from which the app can be approached:

resource "google_cloud_run_service" "test_app" {
  name = "test-app"
  location = var.region

  template {
    spec {
      containers {
        image = "gcr.io/myimage:latest"

        env {
          name = "CURRENT_HOST"
          value = google_cloud_run_service.test_app.status[0].url
        }
      }
    }
  }
}

This however is not allowed, as the service is not yet created. Is there a way to accomplish this?

0 Answers
Related