diff --git a/experimental/terraform/cloudbuild-webhook-notification/main.tf b/experimental/terraform/cloudbuild-webhook-notification/main.tf index 17d416c2..917565b0 100644 --- a/experimental/terraform/cloudbuild-webhook-notification/main.tf +++ b/experimental/terraform/cloudbuild-webhook-notification/main.tf @@ -46,4 +46,3 @@ resource "google_cloud_run_service" "http_notification" { google_storage_bucket_object.http_notification, ] } - diff --git a/experimental/terraform/cloudbuild-webhook-notification/output.tf b/experimental/terraform/cloudbuild-webhook-notification/output.tf new file mode 100644 index 00000000..fbe91801 --- /dev/null +++ b/experimental/terraform/cloudbuild-webhook-notification/output.tf @@ -0,0 +1,7 @@ +output "name" { + value = google_cloud_run_service.http_notification.name +} + +output "url" { + value = google_cloud_run_service.http_notification.status[0]["url"] +} diff --git a/experimental/terraform/data_parser/outputs.tf b/experimental/terraform/data_parser/outputs.tf index 194bfc38..7ff7a5d7 100644 --- a/experimental/terraform/data_parser/outputs.tf +++ b/experimental/terraform/data_parser/outputs.tf @@ -1,3 +1,11 @@ output "cloud_run_endpoint" { value = google_cloud_run_service.parser.status[0]["url"] -} \ No newline at end of file +} + +output "trigger_name" { + value = module.cloudbuild_for_parser.name +} + +output "notification_url" { + value = module.cloudbuild_notification.url +} diff --git a/experimental/terraform/resource_event_handler.tf b/experimental/terraform/resource_event_handler.tf index ad119d1d..4e75551e 100644 --- a/experimental/terraform/resource_event_handler.tf +++ b/experimental/terraform/resource_event_handler.tf @@ -146,4 +146,4 @@ module "event_handler_cloudbuild_notification" { trigger_id = module.event_handler_cloudbuild_trigger.id trigger_name = module.event_handler_cloudbuild_trigger.name url = length(var.mapped_domain) > 0 ? try("https://${var.subdomain}.${var.mapped_domain}", null) : google_cloud_run_service.event_handler.status[0]["url"] -} \ No newline at end of file +} diff --git a/experimental/terraform/resource_pubsub.tf b/experimental/terraform/resource_pubsub.tf index d569b90d..cc72b71e 100644 --- a/experimental/terraform/resource_pubsub.tf +++ b/experimental/terraform/resource_pubsub.tf @@ -34,10 +34,14 @@ module "pubsub" { topic = "cloud-builds" # see https://cloud.google.com/build/docs/configuring-notifications/configure-https for set up and consumption project_id = var.google_project_id - pull_subscriptions = [ - { - name = "pull" + + push_subscriptions = concat([for item in var.parsers : { + name = module.data_parser_service[item].trigger_name + push_endpoint = module.data_parser_service[item].notification_url service_account = module.service_account_for_cloudrun.email - } - ] + }],[{ + name = module.event_handler_cloudbuild_trigger.name + push_endpoint = module.event_handler_cloudbuild_notification.url + service_account = module.service_account_for_cloudrun.email + }]) }