diff --git a/app/models/webhook.rb b/app/models/webhook.rb index 1e305fb..20163af 100644 --- a/app/models/webhook.rb +++ b/app/models/webhook.rb @@ -130,6 +130,7 @@ def render_source(source, event_name, payload) end def rendered_payload(event_name, payload) + raise ::Foreman::Exception.new(N_("Webhook template not found while firing webhook '%s'. Possible organization/location mismatch in the webhook template?"), name) if webhook_template.nil? webhook_template.render(variables: variables(event_name, payload)) end diff --git a/app/subscribers/foreman_webhooks/event_subscriber.rb b/app/subscribers/foreman_webhooks/event_subscriber.rb index d91d1f2..bea96ab 100644 --- a/app/subscribers/foreman_webhooks/event_subscriber.rb +++ b/app/subscribers/foreman_webhooks/event_subscriber.rb @@ -4,6 +4,8 @@ module ForemanWebhooks class EventSubscriber < ::Foreman::BaseSubscriber def call(event) ::Webhook.deliver(event_name: event.name, payload: event.payload) + rescue ::Foreman::Exception => e + Rails.logger.error e.message end end end