google_api_gateway_test/terraform/cloud_run_service.tf
2024-10-16 03:06:47 -04:00

42 lines
1.4 KiB
HCL

resource "google_cloud_run_v2_service" "api_server" {
project = google_project.project.project_id
name = "api-server"
location = var.region
deletion_protection = false
ingress = "INGRESS_TRAFFIC_ALL"
template {
containers {
image = "${google_artifact_registry_repository.docker_repo.location}-docker.pkg.dev/${google_artifact_registry_repository.docker_repo.project}/${google_artifact_registry_repository.docker_repo.repository_id}/library/gateway-test"
ports {
container_port = 8080
}
env {
name = "JWT_PUBLIC_KEY"
value = tls_private_key.jwt_private_key.public_key_pem
}
env {
name = "JWT_PRIVATE_KEY"
value_source {
secret_key_ref {
secret = google_secret_manager_secret.jwt_private_key.secret_id
version = "latest"
}
}
}
env {
name = "JWT_CLIENT_ID"
value = random_uuid.jwt_client_id.result
}
env {
name = "JWT_GATEWAY_ADDRESS"
value = "gateway-to-the-api-etf4fzq.uc.gateway.dev"
# value = google_api_gateway_gateway.gateway.default_hostname
# TODO: This causes a cycle. Perhaps cloud run has a default env variable with this information.
}
}
}
depends_on = [google_project_service.service["run"], ]
}